たとえば、プレゼンテーション、ビジネス、およびデータ レイヤーを含むマルチレイヤーの Winform アプリがあり、ビジネス レイヤーまたはデータ レイヤーでエラーが発生した場合、唯一の論理的なアクションはエラーをログに記録し、ユーザーにそのことを通知することです。エラーが発生しました。ロギングはどこで行われるべきですか?
ビジネスレイヤーとデータレイヤーのメソッドをtry catchブロックに入れる必要があります
try
{
DoSomethingThatMightGiveErrors();
}
catch(Exception ex)
{
logger.log(ex.ToString());
throw;
}
または、エラーをプレゼンテーション レイヤーまでバブルアップさせて、そこでログ記録とユーザーへの通知を処理する必要がありますか?