FaultBindingCollection.Remove(FaultBinding) Metod

Definition

Tar bort den första förekomsten som anges FaultBinding från FaultBindingCollection.

public:
 void Remove(System::Web::Services::Description::FaultBinding ^ bindingOperationFault);
public void Remove(System.Web.Services.Description.FaultBinding bindingOperationFault);
member this.Remove : System.Web.Services.Description.FaultBinding -> unit
Public Sub Remove (bindingOperationFault As FaultBinding)

Parametrar

bindingOperationFault
FaultBinding

Att FaultBinding ta bort från samlingen.

Exempel

I följande exempel visas en typisk användning av Remove metoden.

BindingCollection^ myBindingCollection = myServiceDescription->Bindings;
Binding^ myBinding = myBindingCollection[ 0 ];
OperationBindingCollection^ myOperationBindingCollection = myBinding->Operations;
OperationBinding^ myOperationBinding = myOperationBindingCollection[ 0 ];
FaultBindingCollection^ myFaultBindingCollection = myOperationBinding->Faults;

// Reverse the fault bindings order.
if ( myFaultBindingCollection->Count > 1 )
{
   FaultBinding^ myFaultBinding = myFaultBindingCollection[ 0 ];
   array<FaultBinding^>^myFaultBindingArray = gcnew array<FaultBinding^>(myFaultBindingCollection->Count);
   
   // Copy the fault bindings to a temporary array.
   myFaultBindingCollection->CopyTo( myFaultBindingArray, 0 );
   
   // Remove all the fault binding instances in the fault binding collection.
   for ( int i = 0; i < myFaultBindingArray->Length; i++ )
      myFaultBindingCollection->Remove( myFaultBindingArray[ i ] );
   
   // Insert the fault binding instance in the reverse order.
   for ( int i = 0,j = (myFaultBindingArray->Length - 1); i < myFaultBindingArray->Length; i++,j-- )
      myFaultBindingCollection->Insert( i, myFaultBindingArray[ j ] );
   
   // Check if the first element in the collection before the reversal is now the last element.
   if ( myFaultBindingCollection->Contains( myFaultBinding ) && myFaultBindingCollection->IndexOf( myFaultBinding ) == (myFaultBindingCollection->Count - 1) )
         
   // Display the WSDL generated to the console.
   myServiceDescription->Write( Console::Out );
   else
         Console::WriteLine( "Error while reversing" );
}

BindingCollection myBindingCollection = myServiceDescription.Bindings;
Binding myBinding = myBindingCollection[0];
OperationBindingCollection myOperationBindingCollection = myBinding.Operations;
OperationBinding myOperationBinding = myOperationBindingCollection[0];
FaultBindingCollection myFaultBindingCollection = myOperationBinding.Faults;

// Reverse the fault bindings order.
if(myFaultBindingCollection.Count > 1)
{
   FaultBinding myFaultBinding = myFaultBindingCollection[0];

   FaultBinding[] myFaultBindingArray = new FaultBinding[myFaultBindingCollection.Count];
   // Copy the fault bindings to a temporary array.
   myFaultBindingCollection.CopyTo(myFaultBindingArray, 0);

   // Remove all the fault binding instances in the fault binding collection.
   for(int i = 0; i < myFaultBindingArray.Length; i++)
      myFaultBindingCollection.Remove(myFaultBindingArray[i]);

   // Insert the fault binding instance in the reverse order.
   for(int i = 0, j = (myFaultBindingArray.Length - 1); i < myFaultBindingArray.Length; i++, j--)
      myFaultBindingCollection.Insert(i, myFaultBindingArray[j]);
   // Check if the first element in the collection before the reversal is now the last element.
   if(myFaultBindingCollection.Contains(myFaultBinding) &&
      myFaultBindingCollection.IndexOf(myFaultBinding) == (myFaultBindingCollection.Count - 1))
      // Display the WSDL generated to the console.
      myServiceDescription.Write(Console.Out);
   else
      Console.WriteLine("Error while reversing");
}
      Dim myBindingCollection As BindingCollection = myServiceDescription.Bindings
      Dim myBinding As Binding = myBindingCollection(0)
      Dim myOperationBindingCollection As OperationBindingCollection = myBinding.Operations
      Dim myOperationBinding As OperationBinding = myOperationBindingCollection(0)
      Dim myFaultBindingCollection As FaultBindingCollection = myOperationBinding.Faults

      ' Reverse the fault bindings order.
      If myFaultBindingCollection.Count > 1 Then
         Dim myFaultBinding As FaultBinding = myFaultBindingCollection(0)

         Dim myFaultBindingArray(myFaultBindingCollection.Count - 1) As FaultBinding
         ' Copy the fault bindings to a temporary array.
         myFaultBindingCollection.CopyTo(myFaultBindingArray, 0)

         ' Remove all the fault binding instances in the fault binding collection.
         Dim i, j As Integer

         For i = 0 To myFaultBindingArray.Length - 1
            myFaultBindingCollection.Remove(myFaultBindingArray(i))
         Next i

         j = myFaultBindingArray.Length - 1
         For i = 0 To myFaultBindingArray.Length - 1
            myFaultBindingCollection.Insert(i, myFaultBindingArray(j))
            j = j - 1
         Next

         If myFaultBindingCollection.Contains(myFaultBinding) And myFaultBindingCollection.IndexOf(myFaultBinding) = myFaultBindingCollection.Count - 1 Then
            ' Display the WSDL generated to the console.
            myServiceDescription.Write(Console.Out)
         Else
            Console.WriteLine("Error while reversing")
         End If
      End If
   End Sub

End Class

Kommentarer

Den här metoden utför en linjär sökning. Därför är den genomsnittliga körningstiden proportionell mot Count.

Elementen som följer den borttagna FaultBinding flyttningen upp för att uppta den tömda platsen.

Gäller för