[DebuggerDisplayAttribute("{_name}")]
vs
[DebuggerDisplay("{_name}")]
有什么区别吗?其中一个是另一个的别名吗?当使用名为foo的属性时,VS是否会自动检查是否存在名为fooAttribute的类?
[DebuggerDisplayAttribute("{_name}")]
vs
[DebuggerDisplay("{_name}")]
有什么区别吗?其中一个是另一个的别名吗?当使用名为foo的属性时,VS是否会自动检查是否存在名为fooAttribute的类?
它们是相同的,无论你在结尾写不写Attribute,C#编译器都能够解析类型。
它们是相同的。在生成的代码中,尤其是通过CodeDom输出的代码中,你往往会看到完全限定名称。
你可以使用任何一个。编译器最终生成的内容都是相同的。
没有区别。在命名类时的标准惯例是附加单词Attribute,例如:
public class AlertAttribute : Attribute {}
使用此属性时,通常的惯例是省略单词,例如:
[Alert()]
按照惯例,所有属性名称都以单词“Attribute”结尾,以区别于 .NET Framework 中的其他项。但是,在代码中使用属性时,您无需指定属性后缀。例如,[DllImport] 等同于 [DllImportAttribute],但 DllImportAttribute 是该属性在 .NET Framework 中的实际名称。