none
FaultExceptionメッセージの多言語対応 RRS feed

  • 質問

  • Windows 7 Professional SP1
    Visual Studio 2010 Professional SP1
    .Net Framework 4 (C#)

    WCFサービス内でFaultExceptionを発生させて、
    クライアント側で、CurrentCultureに応じたメッセージを表示させたいと思っています。

    throw new FaultException(
        new FaultReason(
            new FaultReasonText[]
            {
                new FaultReasonText("English Message","en-US"),
                new FaultReasonText("日本語のメッセージ", "ja-JP")
            }));

    しかし、これをクライアントでcatchしてみると、
    FaultException.Reason.Translationsプロパティには1件しかデータが入っていません。
    FaultReasonTextの配列で1件目に設定した内容(英語)のみとなっています。
    (上記の順番を英語→日本語から日本語→英語に変えると日本語のみになります)

    FaultReasonの使い方が間違っていますでしょうか?
    解決方法をお教えいただきたいです。
    よろしくお願いします。

    2014年3月14日 2:08