PortCollection Class
Represents a collection of instances of the Port class. This class cannot be inherited.
For a list of all members of this type, see PortCollection Members.
System.Object
System.Collections.CollectionBase
System.Web.Services.Description.ServiceDescriptionBaseCollection
System.Web.Services.Description.PortCollection
[Visual Basic] NotInheritable Public Class PortCollection Inherits ServiceDescriptionBaseCollection [C#] public sealed class PortCollection : ServiceDescriptionBaseCollection [C++] public __gc __sealed class PortCollection : public ServiceDescriptionBaseCollection [JScript] public class PortCollection extends ServiceDescriptionBaseCollection
Thread Safety
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Example
[Visual Basic] Dim myService As Service Dim myPortCollection As PortCollection Dim myServiceDescription As ServiceDescription = _ ServiceDescription.Read("MathServiceItem_vb.wsdl") Console.WriteLine("Total number of services : " & _ myServiceDescription.Services.Count.ToString) Dim i As Integer For i = 0 to myServiceDescription.Services.Count - 1 myService = myServiceDescription.Services(i) Console.WriteLine("Name : " & myService.Name) myPortCollection = myService.Ports ' Create an array of ports. Console.WriteLine(ControlChars.NewLine & "Port collection :") Dim i1 As Integer For i1 = 0 to myService.Ports.Count - 1 Console.WriteLine("Port[" & i1.ToString & "] : " & _ myPortCollection(i1).Name) Next Dim strPort As String = myPortCollection(0).Name Dim myPort As Port = myPortCollection(strPort) Console.WriteLine(ControlChars.NewLine & _ "Index of Port[" & strPort & "] : " & _ myPortCollection.IndexOf(myPort).ToString) Dim myPortTestRemove As Port = myPortCollection(0) Console.WriteLine(ControlChars.NewLine & _ "Total number of ports before removing " & _ "a port '" & myPortTestRemove.Name & "' is : " & _ myService.Ports.Count.ToString) myPortCollection.Remove(myPortTestRemove) Console.WriteLine("Total number of ports after removing " & _ "a port '" & myPortTestRemove.Name & "' is : " & _ myService.Ports.Count.ToString) ' Create the WSDL file. myPortCollection.Insert(0, myPortTestRemove) myServiceDescription.Write("MathServiceItemNew_vb.wsdl") Next [C#] Service myService; PortCollection myPortCollection; ServiceDescription myServiceDescription = ServiceDescription.Read("MathServiceItem_cs.wsdl"); Console.WriteLine("Total number of services : " + myServiceDescription.Services.Count); for(int i=0; i < myServiceDescription.Services.Count; ++i) { myService = myServiceDescription.Services[i]; Console.WriteLine("Name : " + myService.Name); myPortCollection = myService.Ports; // Create an array of ports. Console.WriteLine("\nPort collection :"); for(int i1=0 ; i1 < myService.Ports.Count ; ++i1) { Console.WriteLine("Port[" + i1+"] : " + myPortCollection[i1].Name); } string strPort = myPortCollection[0].Name; Port myPort = myPortCollection[strPort]; Console.WriteLine("\nIndex of Port[" + strPort + "] : " + myPortCollection.IndexOf(myPort)); Port myPortTestRemove = myPortCollection[0]; Console.WriteLine("\nTotal number of ports before removing " + "a port '" + myPortTestRemove.Name +"' is : " + myService.Ports.Count); myPortCollection.Remove(myPortTestRemove); Console.WriteLine("Total number of ports after removing " + "a port '" + myPortTestRemove.Name +"' is : " + myService.Ports.Count); // Create the WSDL file. myPortCollection.Insert(0, myPortTestRemove); myServiceDescription.Write("MathServiceItemNew_cs.wsdl"); [C++] Service* myService; PortCollection* myPortCollection; ServiceDescription* myServiceDescription = ServiceDescription::Read(S"MathServiceItem_cs.wsdl"); Console::WriteLine(S"Total number of services : {0}", __box(myServiceDescription->Services->Count)); for(int i=0; i < myServiceDescription->Services->Count; ++i) { myService = myServiceDescription->Services->Item[i]; Console::WriteLine(S"Name : {0}", myService->Name); myPortCollection = myService->Ports; // Create an array of ports. Console::WriteLine(S"\nPort collection :"); for(int i1=0 ; i1 < myService->Ports->Count ; ++i1) { Console::WriteLine(S"Port[{0}] : {1}", __box(i1), myPortCollection->Item[i1]->Name); } String* strPort = myPortCollection->Item[0]->Name; Port* myPort = myPortCollection->Item[strPort]; Console::WriteLine(S"\nIndex of Port[{0}] : {1}", strPort, __box(myPortCollection->IndexOf(myPort))); Port* myPortTestRemove = myPortCollection->Item[0]; Console::WriteLine(S"\nTotal number of ports before removing a port '{0}' is : {1}", myPortTestRemove->Name, __box(myService->Ports->Count)); myPortCollection->Remove(myPortTestRemove); Console::WriteLine(S"Total number of ports after removing a port '{0}' is : {1}", myPortTestRemove->Name, __box(myService->Ports->Count)); // Create the WSDL file. myPortCollection->Insert(0, myPortTestRemove); myServiceDescription->Write(S"MathServiceItemNew_cs.wsdl");
[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button
in the upper-left corner of the page.
Requirements
Namespace: System.Web.Services.Description
Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family
Assembly: System.Web.Services (in System.Web.Services.dll)
See Also
PortCollection Members | System.Web.Services.Description Namespace