This documentation is archived and is not being maintained.

PortCollection.Insert Method

Adds the specified Port instance to the PortCollection at the specified index.

[Visual Basic]
Public Sub Insert( _
   ByVal index As Integer, _
   ByVal port As Port _
)
[C#]
public void Insert(
 int index,
 Port port
);
[C++]
public: void Insert(
 int index,
 Port* port
);
[JScript]
public function Insert(
   index : int,
 port : Port
);

Parameters

index
The zero-based index at which to insert the port parameter.
port
The Port to add to the collection.

Exceptions

Exception Type Condition
IndexOutOfRangeException The index parameter is less than zero.

- or -

The index parameter is greater than Count.

Remarks

If the number of items in the collection already equals the collection's capacity, the capacity is doubled by automatically reallocating the internal array before the new element is inserted.

If the value of the index parameter is equal to Count, the specified Port is added to the end of the PortCollection.

The elements after the insertion point move down to accommodate the new element.

Example

[Visual Basic] 
myPortCollection = myService.Ports

' Create an array of Port objects.
Console.WriteLine(ControlChars.NewLine & "Port collection :")
Dim myPortArray(myService.Ports.Count) As Port
myPortCollection.CopyTo(myPortArray, 0)
Dim i1 As Integer
For i1 = 0 to myService.Ports.Count -1
   Console.WriteLine("Port[" & i1.ToString + "] : " & _
      myPortArray(i1).Name)
Next
Dim myIndexPort As Port = myPortCollection(0)
Console.WriteLine(ControlChars.NewLine + ControlChars.NewLine + _
                  "The index of port '" + myIndexPort.Name + "' is : " + _
                  myPortCollection.IndexOf(myIndexPort).ToString)
Dim myPortTestInsert As Port = myPortCollection(0)
myPortCollection.Remove(myPortTestInsert)
myPortCollection.Insert(0, myPortTestInsert)
Console.WriteLine(ControlChars.NewLine + ControlChars.NewLine + _
      "Total Number of Ports after inserting " + "a new port '" + _
      myPortTestInsert.Name + "' is : " + myService.Ports.Count.ToString)
While i1 < myService.Ports.Count
   Console.WriteLine("Port[" + i1.ToString + "]  : " + myPortArray(i1).Name)
End While
myServiceDescription.Write("MathServiceCopyToNew_vb.wsdl")

[C#] 
myPortCollection = myService.Ports;

// Create an array of Port objects.
Console.WriteLine("\nPort collection :");
Port[] myPortArray = new Port[myService.Ports.Count];
myPortCollection.CopyTo(myPortArray, 0);
for(int i1=0 ; i1 < myService.Ports.Count ; ++i1)
{
   Console.WriteLine("Port[" + i1+ "] : " + myPortArray[i1].Name);
}
Port myIndexPort = myPortCollection[0];
Console.WriteLine("\n\nThe index of port '"
   +  myIndexPort.Name + "' is : "
   +  myPortCollection.IndexOf(myIndexPort));

Port myPortTestInsert =myPortCollection[0];
myPortCollection.Remove(myPortTestInsert);
myPortCollection.Insert(0, myPortTestInsert);
Console.WriteLine("\n\nTotal Number of Ports after inserting "
   + "a new port '" + myPortTestInsert.Name +"' is : "
   + myService.Ports.Count);
for(int i1=0 ; i1 < myService.Ports.Count ; ++i1)
{
   Console.WriteLine("Port[" + i1+"]  : " + myPortArray[i1].Name);
}
myServiceDescription.Write("MathServiceCopyToNew_cs.wsdl");

[C++] 
myPortCollection = myService->Ports;

// Create an array of Port objects.
Console::WriteLine(S"\nPort collection :");
Port* myPortArray[] = new Port*[myService->Ports->Count];
myPortCollection->CopyTo(myPortArray, 0);
for(int i1=0 ; i1 < myService->Ports->Count ; ++i1)
{
   Console::WriteLine(S"Port[{0}] : {1}", __box(i1), myPortArray[i1]->Name);
}
Port* myIndexPort = myPortCollection->Item[0];
Console::WriteLine(S"\n\nThe index of port '{0}' is : {1}",
   myIndexPort->Name, __box(myPortCollection->IndexOf(myIndexPort)));

Port* myPortTestInsert =myPortCollection->Item[0];
myPortCollection->Remove(myPortTestInsert);
myPortCollection->Insert(0, myPortTestInsert);
Console::WriteLine(S"\n\nTotal Number of Ports after inserting a new port '{0}' is : {1}",
   myPortTestInsert->Name, __box(myService->Ports->Count));
for(int i1=0 ; i1 < myService->Ports->Count ; ++i1)
{
   Console::WriteLine(S"Port[{0}]  : {1}", __box(i1), myPortArray[i1]->Name);
}
myServiceDescription->Write(S"MathServiceCopyToNew_cs.wsdl");

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

PortCollection Class | PortCollection Members | System.Web.Services.Description Namespace

Show: