【发布时间】:2009-05-06 15:05:35
【问题描述】:
有谁知道当你在 C# 中捕获 UnauthorizedAccessException 时,是否有可能访问引发它的路径?我不希望错误消息只是导致问题的路径。我的 try catch 块可以捕捉到许多不同的块,但我需要报告它并继续到下一个目录/文件而不添加整个异常消息。
【问题讨论】:
-
可能是Data property 中的一个键?令人震惊的是,没有记录在案的 API。
有谁知道当你在 C# 中捕获 UnauthorizedAccessException 时,是否有可能访问引发它的路径?我不希望错误消息只是导致问题的路径。我的 try catch 块可以捕捉到许多不同的块,但我需要报告它并继续到下一个目录/文件而不添加整个异常消息。
【问题讨论】:
也许让您的错误处理更加精细,这样您就只能在失败时捕获一次尝试?您可以通过将有问题的代码重构为实用方法来做到这一点(无需重复自己) - 即
TryCopyFile(path1);
TryCopyFile(path2);
TryCopyFile(path3);
TryCopyFile 捕获异常并记录作为参数传递的(单个)路径。
【讨论】:
在 UnauthorizedAccessException 的 Message 属性中,您会看到如下内容:
Access to the path 'E:\Domains\xxx\wwwroot\Images\main.aspx' is denied.
你可以解析出这条消息的路径。
【讨论】: