1

自己ホスト型の Net Tcp WCF サービスがあり、次の方法があります

        Subscribtion GetSubscribtion(int subscribtionId)
        {
            Subscribtion s;
            if (_subscribtionTable.TryGetValue(subscribtionId, out s) == false)
            {
                Console.WriteLine("Not Found SessionID");//for debugging
                throw new ArgumentException("Invalid Subscription Id");
            }
            return s;
        }

例外をスローすることは、サービス プログラミングでエラーを報告するための良い方法ですか?

4

2 に答える 2

5

WCFでは、代わりにFaultExceptionを定義してスローする必要があります。次の記事は例と詳細を提供します:

于 2009-06-14T14:44:10.920 に答える
2

WCF は本質的に非 .NET プラットフォームと相互運用できるため、厳密な .NET コンストラクトである例外を使用することはお勧めできません。また、通常、WCF 接続があれば (セッション シナリオなどで) 切断されます。

進むべき道は、.NET 以外のクライアントにも転送可能な、相互運用可能な SOAP フォールトを使用することです。

マルク

于 2009-06-14T15:46:41.130 に答える