2
BLLのビジネスルールのエラーを返すためのベストプラクティスは何ですか?私は例外を発生させてプレゼンテーションレイヤーにキャッチしますか?shoudl例外の型情報を保持するオブジェクトを返しますか?BLLエラーのベストプラクティス
BLLのビジネスルールのエラーを返すためのベストプラクティスは何ですか?私は例外を発生させてプレゼンテーションレイヤーにキャッチしますか?shoudl例外の型情報を保持するオブジェクトを返しますか?BLLエラーのベストプラクティス
「戻る」という言葉はここでは微妙です。
多階層設計の主な利点は、直交性です。 BLLのクラスを、現在使用しているUIとはまったく異なるUIから呼び出すことができ、ロギングを完全に別の方法で処理できるはずです。
例外がユーザーの介入または通知なしで処理できる場合は、通常はBLL内で行う必要があります。例外がユーザーの注意を引くか、ログに記録する必要がある場合は、BLLにそのようなものを組み込むことなく、通知とログを実装できるUIまでバブルアップしてください。
単一のBLL例外タイプ(MyDatabaseException)で複数の例外(InvalidCastException、SqlExceptionなど)をラップすると、ライブラリを使用するユーザーは各呼び出しで15種類の例外をトラップする必要がなくなります。 – Will