OperationFaultCollection.Insert(Int32, OperationFault) 方法

定义

将指定的 OperationFault 添加到 OperationFaultCollection 中指定的从零开始的索引处。

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)

参数

index
Int32

将在该处插入 operationFaultMessage 参数的从零开始的索引。

operationFaultMessage
OperationFault

要添加到集合中的 OperationFault

示例

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

注解

如果集合中的项数已经等于集合的容量,则通过在插入新元素之前自动重新分配内部数组来增加容量。

index如果参数等于Count,则bindingOperationFault参数将添加到集合的末尾。

插入点向下移动以容纳新元素的元素。

适用于