如果将无效值传递给属性setter并且ArgumentException
抛出(或者从它派生的类的可能性),那么应该为paramName
参数分配什么值?
value
,因为它似乎是实际的论点?
传递财产的名称不是更清楚吗?
ArgumentExceptions包含无效的参数名称.对于属性设置器,实际参数是命名值(在源代码和生成代码中).使用此名称更加一致.
在使用Reflector进行广泛讨论之后(尝试查找具有可写属性的CLR对象),我找到的第一个(FileStream.Position)使用"value"作为参数名称:
if (value < 0L) { throw new ArgumentOutOfRangeException("value", Environment.GetResourceString("NeedNonNegNum")); }