我有一个生成数字的简单C#方法。如果系统试图生成一个超出已定义范围的数字,我想抛出一个异常,但有很多,我不确定要抛出什么异常?
http://msdn.microsoft.com/en-us/library/system.systemexception.aspx
一个示例是返回下一个可用数字的方法,但不应该大于100.如果系统尝试生成一个数字(即101),那么我想抛出异常。
答案 0 :(得分:5)
您正在寻找ArgumentOutOfRangeException
- 当参数的值超出被调用方法定义的允许值范围时引发的异常。 (MSDN:http://msdn.microsoft.com/en-us/library/system.argumentoutofrangeexception%28v=vs.110%29.aspx)
答案 1 :(得分:0)
OverflowException 似乎可以满足您的需求:
<块引用>OverflowException,当操作的结果为 超出目标数据类型的范围。也就是说,它小于 number 的 MinValue 属性或大于其 MaxValue 属性。为了 例如,尝试将 200 + 200 分配给 Byte 值会引发 OverflowException 异常,由于 400 大于 256,上 Byte 数据类型的边界。 https://docs.microsoft.com/en-us/dotnet/api/system.arithmeticexception?view=net-5.0