OperationFaultCollection.Insert(Int32, OperationFault) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将指定的 OperationFault 添加到 OperationFaultCollection 中指定的从零开始的索引处。
public:
void Insert(int index, System::Web::Services::Description::OperationFault ^ operationFaultMessage);
public void Insert (int index, System.Web.Services.Description.OperationFault operationFaultMessage);
member this.Insert : int * System.Web.Services.Description.OperationFault -> unit
Public Sub Insert (index As Integer, operationFaultMessage As OperationFault)
参数
- index
- Int32
将在该处插入 operationFaultMessage
参数的从零开始的索引。
- operationFaultMessage
- OperationFault
要添加到集合中的 OperationFault。
示例
PortTypeCollection^ myPortTypeCollection = myServiceDescription->PortTypes;
PortType^ myPortType = myPortTypeCollection[ 0 ];
OperationCollection^ myOperationCollection = myPortType->Operations;
Operation^ myOperation = myOperationCollection[ 0 ];
OperationFaultCollection^ myOperationFaultCollection = myOperation->Faults;
// Reverse the operation fault order.
if ( myOperationFaultCollection->Count > 1 )
{
OperationFault^ myOperationFault = myOperationFaultCollection[ 0 ];
array<OperationFault^>^myOperationFaultArray = gcnew array<OperationFault^>(myOperationFaultCollection->Count);
// Copy the operation fault to a temporary array.
myOperationFaultCollection->CopyTo( myOperationFaultArray, 0 );
// Remove all the operation faults from the collection.
for ( int i = 0; i < myOperationFaultArray->Length; i++ )
myOperationFaultCollection->Remove( myOperationFaultArray[ i ] );
// Insert the operation faults in the reverse order.
for ( int i = 0,j = (myOperationFaultArray->Length - 1); i < myOperationFaultArray->Length; i++,j-- )
myOperationFaultCollection->Insert( i, myOperationFaultArray[ j ] );
if ( myOperationFaultCollection->Contains( myOperationFault ) && (myOperationFaultCollection->IndexOf( myOperationFault ) == myOperationFaultCollection->Count - 1) )
Console::WriteLine( "Succeeded in reversing the operation faults." );
else
Console::WriteLine( "Error while reversing the faults." );
}
PortTypeCollection myPortTypeCollection =
myServiceDescription.PortTypes;
PortType myPortType = myPortTypeCollection[0];
OperationCollection myOperationCollection = myPortType.Operations;
Operation myOperation = myOperationCollection[0];
OperationFaultCollection myOperationFaultCollection =
myOperation.Faults;
// Reverse the operation fault order.
if(myOperationFaultCollection.Count > 1)
{
OperationFault myOperationFault = myOperationFaultCollection[0];
OperationFault[] myOperationFaultArray =
new OperationFault[myOperationFaultCollection.Count];
// Copy the operation faults to a temporary array.
myOperationFaultCollection.CopyTo(myOperationFaultArray, 0);
// Remove all the operation faults from the collection.
for(int i = 0; i < myOperationFaultArray.Length; i++)
{
myOperationFaultCollection.Remove(myOperationFaultArray[i]);
}
// Insert the operation faults in the reverse order.
for(int i = 0, j = (myOperationFaultArray.Length - 1);
i < myOperationFaultArray.Length; i++, j--)
{
myOperationFaultCollection.Insert(
i, myOperationFaultArray[j]);
}
if ( myOperationFaultCollection.Contains(myOperationFault) &&
(myOperationFaultCollection.IndexOf(myOperationFault)
== myOperationFaultCollection.Count-1))
{
Console.WriteLine(
"Succeeded in reversing the operation faults.");
}
else
{
Console.WriteLine("Error while reversing the faults.");
}
}
Dim myPortTypeCollection As PortTypeCollection = _
myServiceDescription.PortTypes
Dim myPortType As PortType = myPortTypeCollection(0)
Dim myOperationCollection As OperationCollection = _
myPortType.Operations
Dim myOperation As Operation = myOperationCollection(0)
Dim myOperationFaultCollection As OperationFaultCollection = _
myOperation.Faults
' Reverse the operation fault order.
If myOperationFaultCollection.Count > 1 Then
Dim myOperationFault As OperationFault = _
myOperationFaultCollection(0)
Dim myOperationFaultArray(myOperationFaultCollection.Count -1 ) _
As OperationFault
' Copy the operation faults to a temporary array.
myOperationFaultCollection.CopyTo(myOperationFaultArray, 0)
' Remove all the operation faults from the collection.
Dim i As Integer
For i = 0 To myOperationFaultArray.Length - 1
myOperationFaultCollection.Remove(myOperationFaultArray(i))
Next i
' Insert the operation faults in the reverse order.
Dim j As Integer = myOperationFaultArray.Length - 1
i = 0
While i < myOperationFaultArray.Length
myOperationFaultCollection.Insert(i, myOperationFaultArray(j))
i += 1
j -= 1
End While
If myOperationFaultCollection.Contains(myOperationFault) And _
myOperationFaultCollection.IndexOf(myOperationFault) = _
myOperationFaultCollection.Count - 1 Then
Console.WriteLine("Succeeded in reversing the operation faults.")
Else
Console.WriteLine("Error while reversing the faults.")
End If
End If
注解
如果集合中的项数已经等于集合的容量,则通过在插入新元素之前自动重新分配内部数组来增加容量。
index
如果参数等于Count,则bindingOperationFault
参数将添加到集合的末尾。
插入点向下移动以容纳新元素的元素。