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; 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; } }
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.

