PortType Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje pojmenovanou sadu abstraktních operací a odpovídající abstraktní zprávy. Tuto třídu nelze dědit.
public ref class PortType sealed : System::Web::Services::Description::DocumentableItem
public ref class PortType sealed : System::Web::Services::Description::NamedItem
public sealed class PortType : System.Web.Services.Description.DocumentableItem
[System.Web.Services.Configuration.XmlFormatExtensionPoint("Extensions")]
public sealed class PortType : System.Web.Services.Description.NamedItem
type PortType = class
inherit DocumentableItem
[<System.Web.Services.Configuration.XmlFormatExtensionPoint("Extensions")>]
type PortType = class
inherit NamedItem
Public NotInheritable Class PortType
Inherits DocumentableItem
Public NotInheritable Class PortType
Inherits NamedItem
- Dědičnost
- Dědičnost
- Atributy
Příklady
#using <System.Xml.dll>
#using <System.Web.Services.dll>
#using <System.dll>
using namespace System;
using namespace System::Web::Services::Description;
using namespace System::Xml;
Operation^ CreateOperation( String^ operationName, String^ inputMessage, String^ outputMessage, String^ targetNamespace )
{
Operation^ myOperation = gcnew Operation;
myOperation->Name = operationName;
OperationMessage^ input = dynamic_cast<OperationMessage^>(gcnew OperationInput);
input->Message = gcnew XmlQualifiedName( inputMessage,targetNamespace );
OperationMessage^ output = dynamic_cast<OperationMessage^>(gcnew OperationOutput);
output->Message = gcnew XmlQualifiedName( outputMessage,targetNamespace );
myOperation->Messages->Add( input );
myOperation->Messages->Add( output );
return myOperation;
}
int main()
{
try
{
PortTypeCollection^ myPortTypeCollection;
ServiceDescription^ myServiceDescription = ServiceDescription::Read( "MathService_CS.wsdl" );
myPortTypeCollection = myServiceDescription->PortTypes;
int noOfPortTypes = myServiceDescription->PortTypes->Count;
Console::WriteLine( "\nTotal number of PortTypes : {0}", noOfPortTypes );
PortType^ myPortType = myPortTypeCollection[ "MathServiceSoap" ];
myPortTypeCollection->Remove( myPortType );
// Create a new PortType.
PortType^ myNewPortType = gcnew PortType;
myNewPortType->Name = "MathServiceSoap";
OperationCollection^ myOperationCollection = myServiceDescription->PortTypes[ 0 ]->Operations;
for ( int i = 0; i < myOperationCollection->Count; i++ )
{
String^ inputmsg = String::Concat( myOperationCollection[ i ]->Name, "SoapIn" );
String^ outputmsg = String::Concat( myOperationCollection[ i ]->Name, "SoapOut" );
Console::WriteLine( "Operation = {0}", myOperationCollection[ i ]->Name );
myNewPortType->Operations->Add( CreateOperation( myOperationCollection[ i ]->Name, inputmsg, outputmsg, myServiceDescription->TargetNamespace ) );
}
// Add the PortType to the collection.
myPortTypeCollection->Add( myNewPortType );
noOfPortTypes = myServiceDescription->PortTypes->Count;
Console::WriteLine( "\nTotal Number of PortTypes : {0}", noOfPortTypes );
myServiceDescription->Write( "MathService_New.wsdl" );
}
catch ( Exception^ e )
{
Console::WriteLine( "Exception: {0}", e->Message );
}
}
using System;
using System.Web.Services.Description;
using System.Xml;
class MyPortTypeClass
{
public static void Main()
{
try
{
PortTypeCollection myPortTypeCollection;
ServiceDescription myServiceDescription =
ServiceDescription.Read("MathService_CS.wsdl");
myPortTypeCollection = myServiceDescription.PortTypes;
int noOfPortTypes = myServiceDescription.PortTypes.Count;
Console.WriteLine("\nTotal number of PortTypes : "
+ noOfPortTypes);
PortType myPortType = myPortTypeCollection["MathServiceSoap"];
myPortTypeCollection.Remove(myPortType);
// Create a new PortType.
PortType myNewPortType = new PortType();
myNewPortType.Name = "MathServiceSoap";
OperationCollection myOperationCollection =
myServiceDescription.PortTypes[0].Operations;
for(int i=0;i<myOperationCollection.Count;i++)
{
string inputmsg = myOperationCollection[i].Name + "SoapIn";
string outputmsg = myOperationCollection[i].Name + "SoapOut";
Console.WriteLine("Operation = " + myOperationCollection[i].Name);
myNewPortType.Operations.Add(
CreateOperation(myOperationCollection[i].Name, inputmsg,
outputmsg,myServiceDescription.TargetNamespace));
}
// Add the PortType to the collection.
myPortTypeCollection.Add(myNewPortType);
noOfPortTypes = myServiceDescription.PortTypes.Count;
Console.WriteLine("\nTotal Number of PortTypes : "
+ noOfPortTypes);
myServiceDescription.Write("MathService_New.wsdl");
}
catch(Exception e)
{
Console.WriteLine("Exception: " + e.Message);
}
}
public static Operation CreateOperation(string operationName,
string inputMessage, string outputMessage, string targetNamespace)
{
Operation myOperation = new Operation();
myOperation.Name = operationName;
OperationMessage input = (OperationMessage) new OperationInput();
input.Message = new XmlQualifiedName(inputMessage, targetNamespace);
OperationMessage output = (OperationMessage) new OperationOutput();
output.Message = new XmlQualifiedName(outputMessage, targetNamespace);
myOperation.Messages.Add(input);
myOperation.Messages.Add(output);
return myOperation;
}
}
Imports System.Web.Services.Description
Imports System.Xml
Class MyPortTypeClass
Public Shared Sub Main()
Try
Dim myPortTypeCollection As PortTypeCollection
Dim myServiceDescription As ServiceDescription = _
ServiceDescription.Read("MathService_vb.wsdl")
myPortTypeCollection = myServiceDescription.PortTypes
Dim noOfPortTypes As Integer = _
myServiceDescription.PortTypes.Count
Console.WriteLine(ControlChars.Newline & _
"Total number of PortTypes : " & noOfPortTypes.ToString())
Dim myPortType As PortType = _
myPortTypeCollection("MathServiceSoap")
myPortTypeCollection.Remove(myPortType)
' Create a new PortType.
Dim myNewPortType As New PortType()
myNewPortType.Name = "MathServiceSoap"
Dim myOperationCollection As OperationCollection = _
myServiceDescription.PortTypes(0).Operations
Dim i As Integer
For i = 0 To myOperationCollection.Count - 1
Dim inputmsg As String = _
myOperationCollection(i).Name & "SoapIn"
Dim outputmsg As String = _
myOperationCollection(i).Name & "SoapOut"
Console.WriteLine("Operation = " & myOperationCollection(i).Name)
myNewPortType.Operations.Add( _
CreateOperation(myOperationCollection(i).Name, inputmsg, _
outputmsg, myServiceDescription.TargetNamespace))
Next i
' Add the PortType to the collection.
myPortTypeCollection.Add(myNewPortType)
noOfPortTypes = myServiceDescription.PortTypes.Count
Console.WriteLine(ControlChars.Newline & _
"Total Number of PortTypes : " & noOfPortTypes.ToString())
myServiceDescription.Write("MathService_New.wsdl")
Catch e As Exception
Console.WriteLine("Exception: " & e.Message)
End Try
End Sub
Public Shared Function CreateOperation(operationName As String, _
inputMessage As String, outputMessage As String, _
targetNamespace As String) As Operation
Dim myOperation As New Operation()
myOperation.Name = operationName
Dim input As OperationMessage = _
CType(New OperationInput(), OperationMessage)
input.Message = New XmlQualifiedName(inputMessage, targetNamespace)
Dim output As OperationMessage = _
CType(New OperationOutput(), OperationMessage)
output.Message = New XmlQualifiedName(outputMessage, targetNamespace)
myOperation.Messages.Add(input)
myOperation.Messages.Add(output)
Return myOperation
End Function 'CreateOperation
End Class
Poznámky
Třída PortType odpovídá elementu WSDL (Web Services Description Language) portType
uzavřenému kořenovým prvkem definitions
. Další informace o WSDL naleznete ve specifikaci WSDL .
Konstruktory
PortType() |
Inicializuje novou instanci PortType třídy. |
Vlastnosti
Documentation |
Získá nebo nastaví textovou dokumentaci pro instanci DocumentableItem. (Zděděno od DocumentableItem) |
DocumentationElement |
Získá nebo nastaví prvek dokumentace pro DocumentableItem. (Zděděno od DocumentableItem) |
ExtensibleAttributes |
Získá nebo nastaví pole typu XmlAttribute , který představuje rozšíření atributů WSDL, aby byly v souladu s webovými službami Interoperability (WS-I) Basic Profile 1.1. (Zděděno od DocumentableItem) |
Extensions |
ServiceDescriptionFormatExtensionCollection Získá přidružené k tomuto PortType. |
Extensions |
ServiceDescriptionFormatExtensionCollection Získá přidružené k tomuto DocumentableItem. (Zděděno od DocumentableItem) |
Name |
Získá nebo nastaví název .PortType |
Name |
Získá nebo nastaví název položky. (Zděděno od NamedItem) |
Namespaces |
Získá nebo nastaví slovník předpon oboru názvů a obory názvů použité k zachování předpon oboru názvů a oborů názvů při vytvoření objektu ServiceDescription . (Zděděno od DocumentableItem) |
Operations | |
ServiceDescription |
ServiceDescription Získá, z nichž PortType je členem. |
Metody
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
GetType() |
Type Získá aktuální instanci. (Zděděno od Object) |
MemberwiseClone() |
Vytvoří použádnou kopii aktuálního souboru Object. (Zděděno od Object) |
ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |