簡単に言えば、このアプリケーションはかなり管理された環境であり、ユーザーは他の開発者であるため、多くのエラーを受け取ることはないと思います。
そうは言っても、エラーは遅かれ早かれ発生するので、ログを記録してユーザーに警告したいだけです。情報をできる限り検証してから、A から B にファイルをコピーしようとするこの方法があります。
try
{
File.Copy(source, destination, true);
return String.Empty;
}
catch (Exception ex)
{
logOp.AddLog(ex);
return string.Format("ERROR: {0}{1}{2}", ex.Message, Environment.NewLine, ex.StackTrace);
}
メソッドは、成功した場合は空の文字列を返し、そうでない場合は例外をログに記録し、表示のために呼び出し元のメソッドに返します。
最も詳細なメッセージ/スタック トレースが必要な場合、File.Copy がスローできる個々の例外タイプをキャッチする必要がありますか?それとも例外をキャッチするだけで機能しますか? さまざまな例外の新しいインスタンスをスローするようにハードコーディングしようとしましたが、問題ないようですが、欠落している/違反しているプログラミング原則があるかどうかはわかりませんでした