同じ例外をスローする可能性があるが例外の根拠が異なる2つのメソッドを呼び出すと、どうすればよいでしょうか?例外処理のベストプラクティス
それぞれのメソッドの周りにtry catchブロックを置くと、別の方法で両方の例外を処理できるようにするか、例外をスローするメソッドをどのように取得できますか?一例として、
:私はこの方法
dir = Directory.CreateDirectory(Path.Combine(My.Settings.CalibrationExcelExportPath, dirName))
にメソッドを持っている がIOexception
を投げることができます。
次の例では、テンポラリファイルを作成するメソッドExcelExport.ExportCalibrationAsync
を呼び出しています。テンポラリファイルの名前がない場合は、IOexception
が返されます。
ここで、diffで例外を処理したいと考えています。ユーザーに適切な情報を提供する方法。
私はexception.TargetSite
で試しましたが、私は両方の時間がVoid WinIOError(Int..)
になるので区別するために使用することはできません。
ここでのベストプラクティス