这是正确的例外吗?

时间:2009-06-18 08:42:40

标签: c# xml exception

我解析XML文件以加载数据,当我有一个具有无法识别的值的属性时,我抛出一个InvalidDataException。这是正确的还是更好/更具描述性的

3 个答案:

答案 0 :(得分:3)

这对我来说似乎很合理。这并不是我特别熟悉的例外(即我没有在其他API中遇到它),但它得到了重点。

我想唯一的问题是某种形式的IOException是否更合适。这不是实际的转移,这是问题,当然 - 这是正在转移的内容。当然,这是一个灰色区域。

答案 1 :(得分:2)

该异常表明它是文件本身格式的错误,就像字符编码中的错误一样。 XmlException会更合适。

考虑抛出一个ApplicationException,因为它实际上不是XML格式的错误,而是XML包含的应用程序不接受的内容。

答案 2 :(得分:0)

如果您有已发布的架构,则可能适合使用SchemaValidationException。