2

WCF で開発されたサービス層を介してビジネス層を提供するアプリケーションがあります。私が考えているのは、このサービス層は、作成、更新などの操作方法を提供するということです。これらの操作は、これらの呼び出しをビジネス層に再ルーティングします。問題は、これらの呼び出しの 1 つが null 入力値を受け入れない場合 (たとえば、null オブジェクトを作成する)、チェックを実行するのに最適な場所はどこでしょうか? 私の個人的な答えは、サービス層を使用せずにビジネス層の再利用を保証できるため、サービス層とビジネス層の両方についてです。

私は正しいですか?

ありがとうマルコ

4

2 に答える 2

1

ライブラリ コードまたはアプリケーションの上位レイヤーで使用されるコードは、常に例外をスローするだけで、それらの処理方法について心配する必要はありません。

このライブラリはさまざまな目的でさまざまな場所で使用できるため、これは重要です。

アプリケーション プレゼンテーション レイヤーで、ライブラリ コードを使用していて、考えられる例外を認識している場合は、try/catch でそれらをキャッチしてください。

于 2010-07-13T11:22:07.447 に答える
0

DAL または BLL でエラーを処理しないと、キャッチするまでエラーが発生します。例外は「上書き」されません。

DAL で処理した場合、例外はなくなります。完全に処理しなかった場合でも、DAL で不適切に処理されたエラーが原因で、BLL が別の例外をスローする可能性があります。

一般的なルールは次のようになります。

特定のエラーを処理し、一般的なキャッチオールを使用しないでください。予期しない例外がスタックのさらに上にバブルするのを許可します。

プロジェクトで FxCop を実行して、ベスト プラクティスに違反している場所を確認してください。 http://www.gotdotnet.com/team/fxcop

于 2010-07-13T11:13:57.073 に答える