次の方法で共有


OperationFaultCollection.Insert メソッド

指定した 0 から始まるインデックス番号にある OperationFaultCollection に、指定した OperationFault を追加します。

Public Sub Insert( _
   ByVal index As Integer, _   ByVal operationFaultMessage As OperationFault _)
[C#]
public void Insert(intindex,OperationFaultoperationFaultMessage);
[C++]
public: void Insert(intindex,OperationFault* operationFaultMessage);
[JScript]
public function Insert(
   index : int,operationFaultMessage : OperationFault);

パラメータ

  • index
    operationFaultMessage パラメータを挿入する位置の、0 から始まるインデックス番号。
  • operationFaultMessage
    コレクションに追加する OperationFault

解説

コレクション内の項目数が既にコレクションの許容量に達している場合は、新しい要素が挿入される前に内部配列が自動的に再割り当てされ、コレクションの容量が 2 倍になります。

index パラメータと Count が等しい場合は、 bindingOperationFault パラメータがコレクションの末尾に追加されます。

新しい要素を挿入できるように、挿入位置より後にある要素の位置が繰り下がります。

使用例

 
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

[C#] 
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.");
   }
}

[C++] 
PortTypeCollection * myPortTypeCollection = 
   myServiceDescription->PortTypes;
PortType * myPortType = myPortTypeCollection->Item[0];
OperationCollection * myOperationCollection = myPortType->Operations;
Operation * myOperation = myOperationCollection->Item[0];
OperationFaultCollection * myOperationFaultCollection =
   myOperation->Faults;

// Reverse the operation fault order.
if (myOperationFaultCollection->Count > 1) 
{
   OperationFault * myOperationFault =
      myOperationFaultCollection->Item[0];
   OperationFault* myOperationFaultArray[] = 
      new 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->Item[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->Item[j]);

   if (myOperationFaultCollection->Contains(myOperationFault) &&
      (myOperationFaultCollection->IndexOf(myOperationFault)
      == myOperationFaultCollection->Count-1)) 
      Console::WriteLine(S"Succeeded in reversing the operation faults.");
   else
      Console::WriteLine(S"Error while reversing the faults.");
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

OperationFaultCollection クラス | OperationFaultCollection メンバ | System.Web.Services.Description 名前空間