繁体   English   中英

在C#属性setter中为ArgumentException分配给'paramName'参数的值?

[英]Value to assign to 'paramName' parameter for ArgumentException in C# property setter?

如果将无效值传递给属性setter并抛出ArgumentException (或者是从它派生的类的可能性),那么应该为paramName参数分配什么值?

value ,因为它似乎是实际的论点?

传递财产的名称不是更清楚吗?

ArgumentExceptions包含无效的参数名称。 对于属性设置器,实际参数是命名值(在源代码和生成代码中)。 使用此名称更加一致。

在使用Reflector进行广泛讨论之后(尝试查找具有可写属性的CLR对象),我找到的第一个(FileStream.Position)使用“value”作为参数名称:

if (value < 0L)
{
    throw new ArgumentOutOfRangeException("value", 
                 Environment.GetResourceString("NeedNonNegNum"));
}

是的,通过财产的名称会更清楚。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM