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

属性构造函数的默认值?

  •  11
  • mpen  · 技术社区  · 14 年前

    我犯了这个错误,

    错误CS0182:属性参数必须是常量表达式、typeof表达式或属性参数类型的数组创建表达式

    当我试着写这样的东西的时候

    [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)]
    public class UrlAttribute : Attribute
    {
        public UrlAttribute(string pattern, string name=null)
        {
            // ...
    

    它甚至没有显示行号,但当我取出来的时候它就消失了 =null 钻头。

    二者都 像这样依赖它(即我省略它)

        [Url("/index")]
    

    2 回复  |  直到 11 年前
        1
  •  9
  •   kbrimington    14 年前

    我叫“虫子”。

    我希望你不介意,我向微软报告了这个错误。

    谢谢你报道这个问题 遇到Visual Studio!

    我们已经修复了可选字符串 我们代码中属性的参数。 VS 2010之后的Visual Studio。

    阿莱克斯·特纳

    项目经理

    Visual Basic与C编译器

        2
  •  1
  •   siride    14 年前

    属性已提供默认的可启用参数。只需在属性上创建公共属性,即可在属性实例化过程中分配这些属性。它已经工作了,已经很好地理解了,并且与框架属性的工作方式一致。那么…为什么不直接使用这种机制,而不是尝试向构造函数中冗余地添加默认参数呢?