FaultBindingCollection.Insert(Int32, FaultBinding) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Adds the specified FaultBinding to the FaultBindingCollection
at the specified zero-based index.
public:
void Insert(int index, System::Web::Services::Description::FaultBinding ^ bindingOperationFault);
public void Insert (int index, System.Web.Services.Description.FaultBinding bindingOperationFault);
member this.Insert : int * System.Web.Services.Description.FaultBinding -> unit
Public Sub Insert (index As Integer, bindingOperationFault As FaultBinding)
Parameters
- index
- Int32
The zero-based index at which to insert the bindingOperationFault
parameter.
- bindingOperationFault
- FaultBinding
The FaultBinding to add to the collection.
Examples
The following example demonstrates a typical use of the Insert
method.
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
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 FaultBindingCollection.
The elements after the insertion point move down to accommodate the new element.