OperationFault クラス

XML Web サービスから返されるエラー メッセージの仕様を定義します。このクラスは継承できません。

この型のすべてのメンバの一覧については、OperationFault メンバ を参照してください。

System.Object
   System.Web.Services.Description.DocumentableItem
      System.Web.Services.Description.OperationMessage
         System.Web.Services.Description.OperationFault

NotInheritable Public Class OperationFault
   Inherits OperationMessage
[C#]
public sealed class OperationFault : OperationMessage
[C++]
public __gc __sealed class OperationFault : public OperationMessage
[JScript]
public class OperationFault extends OperationMessage

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

このクラスのインスタンスは、親 Operation インスタンスの Faults プロパティのメンバになります。

OperationFault クラスは、 <operation> 要素で囲まれた WSDL (Web Services Description Language) <fault> 要素に対応します。さらに、この要素は <portType> 要素で囲まれます。WSDL の詳細については、http://www.w3.org/TR/wsdl/ の仕様を参照してください。

使用例

[Visual Basic, C#, C++] OperationFault クラスによって公開されるプロパティとメソッドを使用する例を次に示します。

 
Imports System
Imports System.Web.Services.Description
Imports System.Xml
Imports System.Xml.Schema
Imports System.Xml.Serialization
Imports Microsoft.VisualBasic

Public Class MyOperationFaultSample
   Public Shared Sub Main()
      Try
         ' Read the 'StockQuote_vb.wsdl' file as input.
         Dim myServiceDescription As ServiceDescription = _
                              ServiceDescription.Read("StockQuote_vb.wsdl")
         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 myOperationFault As New OperationFault()
         myOperationFault.Name = "ErrorString"
         myOperationFault.Message = _
                        New XmlQualifiedName("s0:GetTradePriceStringFault")
         myOperation.Faults.Add(myOperationFault)
         Console.WriteLine("Added OperationFault with Name: " + _
                                                     myOperationFault.Name)
         myOperationFault = New OperationFault()
         myOperationFault.Name = "ErrorInt"
         myOperationFault.Message = _
                           New XmlQualifiedName("s0:GetTradePriceIntFault")
         myOperation.Faults.Add(myOperationFault)
         myOperationCollection.Add(myOperation)
         Console.WriteLine("Added Second OperationFault with Name: " + _
                                                    myOperationFault.Name)
         myServiceDescription.Write("StockQuoteNew_vb.wsdl")
         Console.WriteLine(ControlChars.NewLine + _
                           "The file 'StockQuoteNew_vb.wsdl' is " + _
                           "created successfully.")
      Catch e As Exception
         Console.WriteLine("Exception caught!!!")
         Console.WriteLine("Source : " + e.Source)
         Console.WriteLine("Message : " + e.Message)
      End Try
   End Sub
End Class

[C#] 
using System;
using System.Web.Services.Description;
using System.Xml;
using System.Xml.Schema;
using System.Xml.Serialization;

public class MyOperationFaultSample
{
   public static void Main()
   {
      try 
      {
         // Read the 'StockQuote_cs.wsdl' file as input.
         ServiceDescription myServiceDescription = ServiceDescription.
                                               Read("StockQuote_cs.wsdl");
         PortTypeCollection myPortTypeCollection = myServiceDescription.
                                                                PortTypes;
         PortType myPortType = myPortTypeCollection[0];
         OperationCollection myOperationCollection = myPortType.Operations;
         Operation myOperation = myOperationCollection[0];
         OperationFault myOperationFault = new OperationFault();
         myOperationFault.Name = "ErrorString";
         myOperationFault.Message = new XmlQualifiedName
                                          ("s0:GetTradePriceStringFault");
         myOperation.Faults.Add(myOperationFault);
         Console.WriteLine("Added OperationFault with Name: "
                           + myOperationFault.Name);
         myOperationFault = new OperationFault();
         myOperationFault.Name = "ErrorInt";
         myOperationFault.Message = new XmlQualifiedName
                                             ("s0:GetTradePriceIntFault");
         myOperation.Faults.Add(myOperationFault);
         myOperationCollection.Add(myOperation);
         Console.WriteLine("Added Second OperationFault with Name: "
                  +myOperationFault.Name);
         myServiceDescription.Write("StockQuoteNew_cs.wsdl");
         Console.WriteLine("\nThe file 'StockQuoteNew_cs.wsdl' is " +
                           "created successfully.");
      }
      catch(Exception e)
      {
         Console.WriteLine("Exception caught!!!");
         Console.WriteLine("Source : " + e.Source);
         Console.WriteLine("Message : " + e.Message);
      }
   }
}

[C++] 
#using <mscorlib.dll>
#using <System.Web.Services.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::Web::Services::Description;
using namespace System::Xml;
using namespace System::Xml::Schema;
using namespace System::Xml::Serialization;

int main() 
{
   try 
   {
      // Read the 'StockQuote_cpp.wsdl' file as input.
      ServiceDescription* myServiceDescription = 
         ServiceDescription::Read(S"StockQuote_cpp.wsdl");
      PortTypeCollection* myPortTypeCollection = myServiceDescription->
         PortTypes;
      PortType* myPortType = myPortTypeCollection->Item[0];
      OperationCollection* myOperationCollection = myPortType->Operations;
      Operation* myOperation = myOperationCollection->Item[0];
      OperationFault* myOperationFault = new OperationFault();
      myOperationFault->Name = S"ErrorString";
      myOperationFault->Message = new XmlQualifiedName
         (S"s0:GetTradePriceStringFault");
      myOperation->Faults->Add(myOperationFault);
      Console::WriteLine(S"Added OperationFault with Name: {0}", myOperationFault->Name);
      myOperationFault = new OperationFault();
      myOperationFault->Name = S"ErrorInt";
      myOperationFault->Message = new XmlQualifiedName
         (S"s0:GetTradePriceIntFault");
      myOperation->Faults->Add(myOperationFault);
      myOperationCollection->Add(myOperation);
      Console::WriteLine(S"Added Second OperationFault with Name: {0}", 
         myOperationFault->Name);
      myServiceDescription->Write(S"StockQuoteNew_cpp.wsdl");
      Console::WriteLine(S"\nThe file 'StockQuoteNew_cpp.wsdl' is created successfully.");
   } 
   catch (Exception* e) 
   {
      Console::WriteLine(S"Exception caught!!!");
      Console::WriteLine(S"Source : {0}", e->Source);
      Console::WriteLine(S"Message : {0}", e->Message);
   }
}

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

必要条件

名前空間: System.Web.Services.Description

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

アセンブリ: System.Web.Services (System.Web.Services.dll 内)

参照

OperationFault メンバ | System.Web.Services.Description 名前空間 | PortType | Operation