dll中的异常处理

时间:2013-05-28 06:50:30

标签: c# .net exception

我在 dll

中有一个方法
    private static void SaveXmlStringToXmlFile(string xmlString, string xmlFileFullPath)
    {
        XDocument.Parse(xmlString).Save(xmlFileFullPath);
    }

我知道ParseSave会抛出几个例外。无论如何,我不知道如何处理这些异常,因为它是一个DLL。

在代码周围添加try/catch throw;。这个代码不是多余的吗?

最佳做法是什么?

编辑:让我们假设dll的用户对xmlString可能没有任何影响。

1 个答案:

答案 0 :(得分:2)

我认为,当涉及异常时,在另一个程序集(例如DLL)中的代码与条目程序集中的代码之间没有特别的区别。

你应该把每个异常的try / catch放在有足够信息处理异常的地方(并从中恢复,如果你想做的话)。与任何其他异常一样,您应该根据异常的类型和可以抛出的嵌套级别来解释这一点,而不是它所源自的程序集。

我通常使用的经验法则是:如果SaveXmlStringToXmlFile失败,其调用者是否会继续发生什么事情?如果不是(也就是说,如果调用者中的以下语句应该被放弃),那么不要将try / catch放在SaveXmlStringToXmlFile中,而是更高。