1

私はWCFWebサービスを持っており、すべてのメソッドで、ResponseCode(OK、Errorなど)とDataプロパティ(返される実際のオブジェクト、これらはWebサービスによって異なります)を持つResponseクラスを返します。メソッド)、しかし今私はこのオブジェクトのリスト(SearchResult)を返していますが、クライアントで参照を更新しているとき、SearchResultクラスは省略されています。Reference.csファイルに追加されるようにクラスをマークできるインポート属性はありますか?

4

1 に答える 1

1

クラスを[DataContract]属性でマークする必要があります。

さらに、サービスで例外が発生した場合、応答オブジェクトのエラーコードを呼び出し元に返すことはお勧めできません。呼び出し元に余分な作業を作成しているため、呼び出し元が呼び出しかどうかを知るために応答オブジェクトに問い合わせる必要があります。成功したかどうか。

フォールトコントラクトを使用して既知の例外を定義することをお勧めします。これは、消費者がサービスへの呼び出しを試行してラップし、より自然な方法で必要な例外をキャッチできることを意味します。

于 2012-09-04T07:12:08.410 に答える