不确定这里需要多少代码。我正在尝试创建一个不包含我用于处理 XML 文件的所有代码的 try 块。如果我无法读取 XML 文件,则会在此处收到 UnauthorizedAccessException 异常:
XmlReader xmlIn = XmlReader.Create(configFile, settings);
但是后来我的所有代码都读取了 XML,并且因为 xmlIn 在 Try 块中,所以我的方法中的其余代码看不到它。我考虑过可能创建一个默认的 XmlReader:
XmlReader xmlIn = null;
在 try 块之前,只是在 try 块中抛出初始化,但是该方法应该返回一个包含一些字符串的自定义对象,这会导致应该在该部分之后运行的代码抛出 NullReferenceException 异常。
我搜索了一段时间,我能想到的最好的是以下建议最好处理异常,而不是事先测试对文件的访问,这是我想尝试的:如何轻松检查是否.NET 中的文件被拒绝访问?
所以我有点卡在中间,以正确的方式处理我认为非常微不足道的代码。我是否只是将方法中的所有内容都放入 try 块中,在调用此方法的代码部分中使用 try,还是有更好的方法来处理这个问题?