PortType Class
Represents a named set of abstract operations and the corresponding abstract messages. This class cannot be inherited.
Assembly: System.Web.Services (in System.Web.Services.dll)
System.Web.Services.Description::DocumentableItem
System.Web.Services.Description::NamedItem
System.Web.Services.Description::PortType
| Name | Description | |
|---|---|---|
![]() | PortType() | Initializes a new instance of the PortType class. |
| Name | Description | |
|---|---|---|
![]() | Documentation | Gets or sets the text documentation for the instance of the DocumentableItem.(Inherited from DocumentableItem.) |
![]() | DocumentationElement | Gets or sets the documentation element for the DocumentableItem.(Inherited from DocumentableItem.) |
![]() | ExtensibleAttributes | 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.(Inherited from DocumentableItem.) |
![]() | Extensions | Gets the ServiceDescriptionFormatExtensionCollection associated with this PortType.(Overrides DocumentableItem::Extensions.) |
![]() | Name | Gets or sets the name of the item.(Inherited from NamedItem.) |
![]() | Namespaces | Gets or sets the dictionary of namespace prefixes and namespaces used to preserve namespace prefixes and namespaces when a ServiceDescription object is constructed.(Inherited from DocumentableItem.) |
![]() | Operations | Gets the collection of Operation instances defined by the PortType. |
![]() | ServiceDescription | Gets the ServiceDescription of which the PortType is a member. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
The PortType class corresponds to the Web Services Description Language (WSDL) portType element enclosed by the definitions root element. For more information about WSDL, see the specification at http://www.w3.org/TR/wsdl.
#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 ); } }
Available since 1.1
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
.jpeg?cs-save-lang=1&cs-lang=cpp)
.jpeg?cs-save-lang=1&cs-lang=cpp)