代码之家  ›  专栏  ›  技术社区  ›  mafu

为属性setter中的argumentException分配给“paramname”参数的值?

  •  10
  • mafu  · 技术社区  · 17 年前

    如果将无效值传递给属性setter和 ArgumentException (或从中派生的类的可能性)被抛出,应将什么值赋给 paramName 参数?

    value 因为这似乎是真正的论点?

    是否更清楚地传递属性的名称?

    3 回复  |  直到 8 年前
        1
  •  9
  •   JaredPar    17 年前

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

        2
  •  8
  •   James Curran    17 年前

    在使用reflector进行了大量搜索(尝试查找具有可写属性的clr对象)之后,我找到的第一个对象(filestream.position)使用“value”作为参数名:

    if (value < 0L)
    {
        throw new ArgumentOutOfRangeException("value", 
                     Environment.GetResourceString("NeedNonNegNum"));
    }
    
        3
  •  2
  •   alex    17 年前

    是的,传递属性名称会更清楚。

    推荐文章