私のソフトウェアは Try Catch を使用してエラーを検出します。最近エラーが発生し (データベースへのタイムアウト接続)、ユーザーに問題を警告する Messagebox.Show() がポップアップ表示されます。この社内ソフトウェアのエンド ユーザーは、IT に関する知識がまったくありません。このメッセージを受け取った女性は、誰とのつながりを失ったのかと私に尋ねました(彼女はヒッピーのように見えるので、それは精神的な「つながり」だと思っていたと思います)。
だから私がやりたいのは、エラーメッセージを単純化することです。
私が検討したこと:
ex.Message 文字列を、対応したい文字列のリストとチェック/比較できます。一致する場合は、簡略化されたバージョンを表示します。IMO、現実的ではありません。
次に、複数のキャッチがあり、特定のタイプの場合は単純なメッセージを表示することを考えました。しかし、私のコードはどれほど厄介なものになるでしょう! それだけでなく、すべての (たとえば) TimeOutExceptions が同じであるとは限らないため、誤解を招くメッセージが表示される可能性もあります。
または、これに対応するために独自の例外タイプを作成してみる必要があります。
次に、各 .NET 例外に ID が関連付けられていれば、非常に便利ですが、そのようにすれば、各 ID と自分自身の素敵で簡単に理解できるメッセージを含む適切な case ステートメントを作成できます。
他の誰かがこれを以前に検討し、適切な取り決めを見つけましたか? それとも、「エラー - 電子メールがソフトウェア ベンダーに送信されました...」というメッセージを画面に表示する方がよいでしょうか)?