FaultBindingCollection.CopyTo(FaultBinding[], Int32) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
複製整個 FaultBindingCollection 至 FaultBinding 型別的相容一維陣列,從目標陣列的指定以零起始的索引位置開始。
public:
void CopyTo(cli::array <System::Web::Services::Description::FaultBinding ^> ^ array, int index);
public void CopyTo (System.Web.Services.Description.FaultBinding[] array, int index);
member this.CopyTo : System.Web.Services.Description.FaultBinding[] * int -> unit
Public Sub CopyTo (array As FaultBinding(), index As Integer)
參數
- array
- FaultBinding[]
做為複製動作目的端的 FaultBinding 型別的陣列。
- index
- Int32
以零起始的索引,要於此處開始放置複製的集合。
範例
下列範例示範 方法的 CopyTo
一般用法。
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