FaultBindingCollection.IndexOf(FaultBinding) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Осуществляет поиск указанного объекта FaultBinding и возвращает отсчитываемый с нуля индекс его первого вхождения в коллекцию.
public:
int IndexOf(System::Web::Services::Description::FaultBinding ^ bindingOperationFault);
public int IndexOf (System.Web.Services.Description.FaultBinding bindingOperationFault);
member this.IndexOf : System.Web.Services.Description.FaultBinding -> int
Public Function IndexOf (bindingOperationFault As FaultBinding) As Integer
Параметры
- bindingOperationFault
- FaultBinding
Объект FaultBinding, который требуется найти в коллекции.
Возвращаемое значение
32-разрядное знаковое целое число.
Примеры
В следующем примере демонстрируется типичное использование IndexOf
метода.
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