PortType Classe

Definizione

Rappresenta un set denominato di operazioni astratte e dei corrispondenti messaggi astratti.Represents a named set of abstract operations and the corresponding abstract messages. La classe non può essere ereditata.This class cannot be inherited.

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
Ereditarietà
Ereditarietà
Attributi

Esempio

#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

Commenti

La PortType classe corrisponde all'elemento Web Services Description Language (WSDL) portType racchiuso dall' definitions elemento radice.The PortType class corresponds to the Web Services Description Language (WSDL) portType element enclosed by the definitions root element. Per altre informazioni su WSDL, vedere la specifica WSDL.For more information about WSDL, see the WSDL specification.

Costruttori

PortType()

Inizializza una nuova istanza della classe PortType.Initializes a new instance of the PortType class.

Proprietà

Documentation

Ottiene o imposta la documentazione di testo per l'istanza di DocumentableItem.Gets or sets the text documentation for the instance of the DocumentableItem.

(Ereditato da DocumentableItem)
DocumentationElement

Ottiene o imposta l'elemento di documentazione di DocumentableItem.Gets or sets the documentation element for the DocumentableItem.

(Ereditato da DocumentableItem)
ExtensibleAttributes

Ottiene o imposta una matrice di tipo XmlAttribute che rappresenta le estensioni dell'attributo di WSDL per la conformità a Web Services Interoperability (WS-I) Basic Profile 1.1.Gets or sets an array of type XmlAttribute that represents attribute extensions of WSDL to comply with Web Services Interoperability (WS-I) Basic Profile 1.1.

(Ereditato da DocumentableItem)
Extensions

Ottiene l'oggetto ServiceDescriptionFormatExtensionCollection associato a questo oggetto PortType.Gets the ServiceDescriptionFormatExtensionCollection associated with this PortType.

Extensions

Ottiene l'oggetto ServiceDescriptionFormatExtensionCollection associato a questo oggetto DocumentableItem.Gets the ServiceDescriptionFormatExtensionCollection associated with this DocumentableItem.

(Ereditato da DocumentableItem)
Name

Ottiene o imposta il nome di PortType.Gets or sets the name of the PortType.

Name

Ottiene o imposta il nome dell'elemento.Gets or sets the name of the item.

(Ereditato da NamedItem)
Namespaces

Ottiene o imposta il dizionario dei prefissi degli spazi dei nomi e degli spazi dei nomi utilizzato per conservare i prefissi degli spazi dei nomi e gli spazi dei nomi quando viene costruito un oggetto ServiceDescription.Gets or sets the dictionary of namespace prefixes and namespaces used to preserve namespace prefixes and namespaces when a ServiceDescription object is constructed.

(Ereditato da DocumentableItem)
Operations

Ottiene l'insieme delle istanze di Operation definite da PortType.Gets the collection of Operation instances defined by the PortType.

ServiceDescription

Ottiene l'oggetto ServiceDescription di cui PortType è membro.Gets the ServiceDescription of which the PortType is a member.

Metodi

Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.Determines whether the specified object is equal to the current object.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.Serves as the default hash function.

(Ereditato da Object)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Ereditato da Object)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Ereditato da Object)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Ereditato da Object)

Si applica a