FaultBindingCollection.Insert(Int32, FaultBinding) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将指定的 FaultBinding 添加到 FaultBindingCollection
中指定的从零开始的索引处。
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)
参数
- index
- Int32
将在该处插入 bindingOperationFault
参数的从零开始的索引。
- bindingOperationFault
- FaultBinding
要添加到集合中的 FaultBinding。
示例
以下示例演示 了 方法的典型用法 Insert
。
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
注解
如果集合中的项数已等于集合的容量,则通过在插入新元素之前自动重新分配内部数组,将容量增加一倍。
index
如果 参数等于 Count,则 参数bindingOperationFault
将添加到 的FaultBindingCollection末尾。
插入点之后的元素向下移动以适应新元素。