FaultException<TDetail> クラス

2013/12/12

クライアント アプリケーション内で、契約により指定された SOAP エラーをキャッチするために使用されます。

System.Object
  System.Exception
    System.SystemException
      System.ServiceModel.CommunicationException
        System.ServiceModel.FaultException
          System.ServiceModel.FaultException<TDetail>

Namespace:  System.ServiceModel
アセンブリ:  System.ServiceModel (System.ServiceModel.dll 内)

public class FaultException<TDetail> : FaultException

型パラメーター

TDetail

シリアル化可能なエラー詳細の型。

FaultException<TDetail> 型で公開されるメンバーは以下のとおりです。

  名前説明
パブリック メソッドFaultException<TDetail>指定された詳細オブジェクトと SOAP エラーの理由、コード、およびアクション値で FaultException<TDetail> クラスの新しいインスタンスを初期化します。
このページのトップへ

  名前説明
パブリック プロパティActionエラー メッセージの SOAP アクションの値を取得します。 (FaultException から継承されます。)
パブリック プロパティCodeSOAP エラーのエラー コードを取得します。 (FaultException から継承されます。)
パブリック プロパティData例外に関する追加のユーザー定義情報を提供するキー/値ペアのコレクションを取得します。 (Exception から継承されます。)
パブリック プロパティDetailエラーの状態に関する詳細情報が格納されたオブジェクトを取得します。
パブリック プロパティHelpLink例外に関連付けられているヘルプ ファイルへのリンクを取得または設定します。 (Exception から継承されます。)
パブリック プロパティHResult特定の例外に割り当てられているコード化数値である HRESULT を取得または設定します。 (Exception から継承されます。)
パブリック プロパティInnerException現在の例外の原因となる Exception インスタンスを取得します。 (Exception から継承されます。)
パブリック プロパティMessage例外のメッセージを取得します。 (FaultException から継承されます。)
パブリック プロパティReasonSOAP エラーの FaultReason を取得します。 (FaultException から継承されます。)
パブリック プロパティSourceエラーの原因となったアプリケーションまたはオブジェクトの名前を取得または設定します。 (Exception から継承されます。)
パブリック プロパティStackTrace現在の例外がスローされたときの、コール スタックのフレームの文字列形式を取得します。 (Exception から継承されます。)
このページのトップへ

  名前説明
パブリック メソッドCreateMessageFaultメモリ内の MessageFault オブジェクトを返します。 (FaultException から継承されます。)
パブリック メソッドEquals(Object)指定した Object が、現在の Object と等しいかどうかを判断します。 (Object から継承されます。)
プロテクト メソッドFinalizeObject がガベージ コレクションで再利用される前に、Object がリソースを解放して他のクリーンアップ操作を実行できるようにします。 (Object から継承されます。)
パブリック メソッドGetBaseException派生クラスでオーバーライドされた場合、それ以後に発生する 1 つ以上の例外の主要な原因である Exception を返します。 (Exception から継承されます。)
パブリック メソッドGetHashCode特定の型のハッシュ関数として機能します。 (Object から継承されます。)
パブリック メソッドGetType現在のインスタンスのランタイム型を取得します。 (Exception から継承されます。)
プロテクト メソッドMemberwiseClone現在の Object の簡易コピーを作成します。 (Object から継承されます。)
パブリック メソッドToStringFaultException<TDetail> オブジェクトの文字列を返します。 (Exception.ToString() をオーバーライドします。)
このページのトップへ

Windows Phone クライアント アプリケーションで FaultException<TDetail> オブジェクトをキャッチし、操作コントラクトで契約により指定された SOAP エラーを処理します。

配置されている一般的なサービスでは FaultContractAttribute を使用して、クライアントが操作の通常の過程で受信することが想定可能なすべての SOAP エラーを正式に指定します。FaultContractAttribute のエラー情報は、クライアント アプリケーションに到達した時点で FaultException<TDetail> として表示されます (この場合、型パラメーターは操作の FaultContractAttribute で指定されているシリアル化可能なエラー オブジェクトです)。FaultContractAttribute を使用すると、双方向のサービス メソッドと、非同期メソッドのペアの両方に、SOAP エラーを指定できます。

FaultException<TDetail>FaultException であることから CommunicationException でもあるため、指定した SOAP エラーをキャッチするには、FaultException および CommunicationException 型の前に FaultException<TDetail> 型をキャッチするか、これらの例外ハンドラーのいずれかで指定の例外を処理するようにします。

メモメモ:

System.ServiceModel.FaultContractAttribute を使用して、型パラメーターが System.String である FaultException<TDetail> を指定する場合、文字列はクライアント アプリケーションの Detail プロパティに割り当てられます。クライアントは、FaultException<TDetail>.ToString メソッドを呼び出してその文字列を取得することはできません。クライアント アプリケーションが Exception.ToString を呼び出す場合に文字列値を返すようにするには、操作内で System.ServiceModel.FaultException 例外をスローし、コンストラクターに文字列を渡します。一般的に、詳細な型は、エラーに適したカスタムのシリアル化可能な型にして、System.String にはしないことを推奨します。

機能

この API をアプリ内で使用する場合は、アプリ マニフェストで次の機能を指定する必要があります。この機能を指定しないと、アプリが正しく機能しないか、予期せずに終了することがあります。

ID_CAP_NETWORKING

Windows Phone 8, Windows Phone OS 7.1

詳細については、「Windows Phone のアプリ機能とハードウェア要件」を参照してください。

以下のコード例では、サービスが FaultException<TDetail> 型を使用して、FaultContractAttribute により指定される SOAP エラーに変換されるマネージ例外をスローする方法を示します。

以下のコード例では、SLsvcutil.exe を使用してクライアントによりインポートされた場合のクライアント コードの外観を示します。

以下のコード例では、操作コントラクトで指定されているカスタム SOAP エラーを表す FaultException<TDetail> 型をクライアントでキャッチする方法を示します。

Windows Phone OS

サポート: 8.0, 7.1, 7.0

この型のすべてのパブリック static (Visual Basic では Shared) メンバーは、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

表示:
© 2014 Microsoft