ビジネス層で生成されたUIに例外メッセージを表示するための提案された方法は何ですか?

StackOverflow https://stackoverflow.com/questions/2766309

質問

ビジネスレイヤーからスローされた例外を使用して、プレゼンテーションレイヤーにユーザーのフレンドリーなメッセージを作成するパターンまたは「ベストプラクティス」はありますか?

実際、多くの場合、私はアプリケーションの例外をスローすることを好みますが、これはUI(ASPX.CSページ)でそれらをキャッチすることを余儀なくされています。また、さまざまな種類の例外を生成するプロセスが複雑である場合、特定のエラーメッセージを作成するには多くのキャッチブロックが必要です。

あなたの心に来るより良い方法はありますか?同様の場合のパターン?

ありがとう

役に立ちましたか?

解決

カスタム例外クラスを使用して、UIレイヤーの例外を介してエラーを返すことができます。これらのカスタム例外は、ユーザーにとって意味のあるエラーメッセージを含めることができるため、他のエラーメッセージと同じように表示できます。

そうすれば、エラーの種類ごとに多くの場合、UIに1つの例外ハンドラーのみが必要になります...

他のヒント

まず、現時点で処理できるコードで例外をキャッチするためだけにベストプラクティスだと思います。処理できない場合は、より高いレベルに昇進させます。

2番目:グローバルに例外をキャッチする可能性があります。

public static void RegisterExceptionHandler()
{
    Application.ThreadException += new System.Threading.ThreadExceptionEventHandler    (Application_UIThreadException);
    Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException);

    AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);
}

この例外処理方法では、処理されていないすべての例外がキャッチされます。ここでは、「予期しない」何かが起こったことをユーザーに通知できます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top