c# - 应用 C# 属性时允许使用什么语法?

标签 c# syntax attributes

这些是迄今为止我见过的最常见也是唯一的模式:

[AttributeFoo]
[AttributeBar("Hello world!")]
[AttributeBaz(foo=42,bar="Hello world!")]
public class Example {}

属性语法看起来您正在调用构造函数。在 C# 支持可选参数和命名参数之前,属性的命名参数是唯一可见的区别。

C# 编译器是否允许其他任何东西?像 params 参数或对象/集合初始值设定项?

另请参阅:Applying Attributes在 MSDN 上

最佳答案

除了其他人所说的,我想指出的是,属性也可以用逗号分隔。

[AttributeFoo, AttributeBar("Hello world!"), AttributeBaz(foo=42,bar="Hello world!")]
public class Example {}

关于c# - 应用 C# 属性时允许使用什么语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8918052/

相关文章:

vba - Call关键字在VB6中起什么作用?

c# - 如何刷新 PropertyGrid 中的本地化属性

c# - 我可以将自定义属性限制为仅无效方法吗?

core-data - 核心数据删除对象: sets attributes to nil

c# - 如何制作 Response.Write(...);在我的 Controller 中

c# - TPL Fire and Forget 使用单独的类

c# - 如何安排 C# 代码执行

C#编译器和局部变量的缓存

python - 将旧 SIGNAL 和 SLOT 转换为新样式的正确方法?

python - 了解类内的 python 变量范围