PortType Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje nazwany zestaw operacji abstrakcyjnych i odpowiednie komunikaty abstrakcyjne. Klasa ta nie może być dziedziczona.
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
- Dziedziczenie
- Dziedziczenie
- Atrybuty
Przykłady
#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
Uwagi
Klasa PortType odpowiada elementowi Web Services Description Language (WSDL) portType
ujętemu definitions
w element główny. Aby uzyskać więcej informacji na temat języka WSDL, zobacz specyfikację WSDL .
Konstruktory
PortType() |
Inicjuje nowe wystąpienie klasy PortType. |
Właściwości
Documentation |
Pobiera lub ustawia dokumentację tekstu dla wystąpienia klasy DocumentableItem. (Odziedziczone po DocumentableItem) |
DocumentationElement |
Pobiera lub ustawia element dokumentacji dla elementu DocumentableItem. (Odziedziczone po DocumentableItem) |
ExtensibleAttributes |
Pobiera lub ustawia tablicę typu XmlAttribute reprezentującą rozszerzenia atrybutów języka WSDL w celu zachowania zgodności z podstawowym profilem 1.1 usług sieci Web (WS-I). (Odziedziczone po DocumentableItem) |
Extensions |
ServiceDescriptionFormatExtensionCollection Pobiera skojarzony z tym PortTypeelementem . |
Extensions |
ServiceDescriptionFormatExtensionCollection Pobiera element skojarzony z tym DocumentableItemelementem . (Odziedziczone po DocumentableItem) |
Name |
Pobiera lub ustawia nazwę elementu PortType. |
Name |
Pobiera lub ustawia nazwę elementu. (Odziedziczone po NamedItem) |
Namespaces |
Pobiera lub ustawia słownik prefiksów przestrzeni nazw i przestrzeni nazw używanych do zachowywania prefiksów przestrzeni nazw i przestrzeni nazw podczas ServiceDescription konstruowania obiektu. (Odziedziczone po DocumentableItem) |
Operations |
Pobiera kolekcję wystąpień zdefiniowanych Operation przez PortTypeelement . |
ServiceDescription |
ServiceDescription Pobiera element PortType członkowski. |
Metody
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetType() |
Type Pobiera wartość bieżącego wystąpienia. (Odziedziczone po Object) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
ToString() |
Zwraca ciąg reprezentujący bieżący obiekt. (Odziedziczone po Object) |