แก้ไข

แชร์ผ่าน


OperationFaultCollection.Insert(Int32, OperationFault) Method

Definition

Adds the specified OperationFault to the OperationFaultCollection at the specified zero-based index.

public:
 void Insert(int index, System::Web::Services::Description::OperationFault ^ operationFaultMessage);
public void Insert (int index, System.Web.Services.Description.OperationFault operationFaultMessage);
member this.Insert : int * System.Web.Services.Description.OperationFault -> unit
Public Sub Insert (index As Integer, operationFaultMessage As OperationFault)

Parameters

index
Int32

The zero-based index at which to insert the operationFaultMessage parameter.

operationFaultMessage
OperationFault

The OperationFault to add to the collection.

Examples

PortTypeCollection^ myPortTypeCollection = myServiceDescription->PortTypes;
PortType^ myPortType = myPortTypeCollection[ 0 ];
OperationCollection^ myOperationCollection = myPortType->Operations;
Operation^ myOperation = myOperationCollection[ 0 ];
OperationFaultCollection^ myOperationFaultCollection = myOperation->Faults;

// Reverse the operation fault order.
if ( myOperationFaultCollection->Count > 1 )
{
   OperationFault^ myOperationFault = myOperationFaultCollection[ 0 ];
   array<OperationFault^>^myOperationFaultArray = gcnew array<OperationFault^>(myOperationFaultCollection->Count);

   // Copy the operation fault to a temporary array.
   myOperationFaultCollection->CopyTo( myOperationFaultArray, 0 );

   // Remove all the operation faults from the collection.
   for ( int i = 0; i < myOperationFaultArray->Length; i++ )
      myOperationFaultCollection->Remove( myOperationFaultArray[ i ] );

   // Insert the operation faults in the reverse order.
   for ( int i = 0,j = (myOperationFaultArray->Length - 1); i < myOperationFaultArray->Length; i++,j-- )
      myOperationFaultCollection->Insert( i, myOperationFaultArray[ j ] );
   if ( myOperationFaultCollection->Contains( myOperationFault ) && (myOperationFaultCollection->IndexOf( myOperationFault ) == myOperationFaultCollection->Count - 1) )
            Console::WriteLine( "Succeeded in reversing the operation faults." );
   else
            Console::WriteLine( "Error while reversing the faults." );
}
PortTypeCollection myPortTypeCollection =
   myServiceDescription.PortTypes;
PortType myPortType = myPortTypeCollection[0];
OperationCollection myOperationCollection = myPortType.Operations;
Operation myOperation = myOperationCollection[0];
OperationFaultCollection myOperationFaultCollection =
   myOperation.Faults;

// Reverse the operation fault order.
if(myOperationFaultCollection.Count > 1)
{
   OperationFault myOperationFault = myOperationFaultCollection[0];
   OperationFault[] myOperationFaultArray =
      new OperationFault[myOperationFaultCollection.Count];

   // Copy the operation faults to a temporary array.
   myOperationFaultCollection.CopyTo(myOperationFaultArray, 0);

   // Remove all the operation faults from the collection.
   for(int i = 0; i < myOperationFaultArray.Length; i++)
   {
      myOperationFaultCollection.Remove(myOperationFaultArray[i]);
   }

   // Insert the operation faults in the reverse order.
   for(int i = 0, j = (myOperationFaultArray.Length - 1);
      i < myOperationFaultArray.Length; i++, j--)
   {
      myOperationFaultCollection.Insert(
         i, myOperationFaultArray[j]);
   }
   if ( myOperationFaultCollection.Contains(myOperationFault) &&
      (myOperationFaultCollection.IndexOf(myOperationFault)
      == myOperationFaultCollection.Count-1))
   {
      Console.WriteLine(
         "Succeeded in reversing the operation faults.");
   }
   else
   {
      Console.WriteLine("Error while reversing the faults.");
   }
}
Dim myPortTypeCollection As PortTypeCollection = _
   myServiceDescription.PortTypes
Dim myPortType As PortType = myPortTypeCollection(0)
Dim myOperationCollection As OperationCollection = _
   myPortType.Operations
Dim myOperation As Operation = myOperationCollection(0)
Dim myOperationFaultCollection As OperationFaultCollection = _
   myOperation.Faults

' Reverse the operation fault order.
If myOperationFaultCollection.Count > 1 Then
   Dim myOperationFault As OperationFault = _
      myOperationFaultCollection(0)
   Dim myOperationFaultArray(myOperationFaultCollection.Count -1 ) _
      As OperationFault

   ' Copy the operation faults to a temporary array.
   myOperationFaultCollection.CopyTo(myOperationFaultArray, 0)

   ' Remove all the operation faults from the collection.
   Dim i As Integer
   For i = 0 To myOperationFaultArray.Length - 1
      myOperationFaultCollection.Remove(myOperationFaultArray(i))
   Next i

   ' Insert the operation faults in the reverse order.
   Dim j As Integer = myOperationFaultArray.Length - 1
   i = 0
   While i < myOperationFaultArray.Length
      myOperationFaultCollection.Insert(i, myOperationFaultArray(j))
      i += 1
      j -= 1
   End While
   If myOperationFaultCollection.Contains(myOperationFault) And _
      myOperationFaultCollection.IndexOf(myOperationFault) = _
      myOperationFaultCollection.Count - 1 Then
      Console.WriteLine("Succeeded in reversing the operation faults.")
   Else
      Console.WriteLine("Error while reversing the faults.")
   End If
End If

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 index parameter is equal to Count, the bindingOperationFault parameter is added to the end of the collection.

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

Applies to