【发布时间】:2012-01-13 19:20:12
【问题描述】:
我正在开发一个 FileSystemWatch 程序,如果在复制文件时出错,我希望能够知道它在哪个文件上失败。同时,我希望能够保留堆栈跟踪,以及内部异常信息。
if (!found)
{
try
{
File.Copy(file, Path.Combine(watchDirectory, filename));
}
catch (Exception ex)
{
WriteToLog(new Exception(
String.Format("An error occurred syncing the Vault location with the watch location. Error copying the file {0}. Error = {1}", file, ex.Message), ex.InnerException));
}
}
所以,通过的异常,我仍然想要堆栈跟踪信息,内部异常信息,但我希望“消息”是我的自定义消息,其中包含失败的文件,同时还显示原始异常引发的“真实”消息。
【问题讨论】:
-
您究竟为什么要创建一个新异常?
-
@Oded 这样我就可以得到在实际异常消息中有错误的文件
标签: c# exception exception-handling