错误的数组长度的特定异常

时间:2018-05-08 07:26:24

标签: .net arrays exception

我写了一个方法,它采用一个精确长度的数组作为参数。

当用户尝试将长度错误的数组传递给方法时,该方法会生成 ArgumentException

对于这种情况,.NET是否有更具体的异常类型?什么是更好的做法:告诉异常消息异常的原因或纠正方法?

1 个答案:

答案 0 :(得分:0)

  

对于这种情况,.NET是否有更具体的异常类型?

不,.Net框架没有为您的特定情况内置更具体的例外 虽然你总是可以创建自己的自定义异常类,但我认为在大多数情况下它都是一种过度杀伤力。我会说ArgumentException是抛出这种情况的正确例外。

  

更好的做法是什么:告诉异常消息异常的原因或纠正方法?

在抛出异常时,您会在消息中包含导致异常的内容,而不是如何修复异常 在这种特殊情况下,我可能会在错误消息中写出类似的内容:

"<ArrayParameterName> have and invalid length. Acceptable length is <x>"

当然,将<ArrayParameterName>更改为参数名称,将<x>更改为可接受的长度。