C# 可以省略没有参数的属性中的括号吗?

C# 可以省略没有参数的属性中的括号吗?,c#,.net,attributes,C#,.net,Attributes,我注意到当我使用[Serializable]而不是[Serializable()]时,代码仍然可以编译 有没有一条规则可以省略括号?这是一种好的做法吗?除非我遗漏了一些东西,否则它对我来说更具可读性。关于最佳实践,我在子主题中没有看到任何特定的规则 通常,我发现手工键入属性的人会忽略空参数,但代码生成几乎总是显式地包含它们 如果要使用的属性构造函数没有参数,并且不想指定任何可选参数(属性值),则可能会错过() 有关更多详细信息,请参见是从语言角度来看,省略属性是合法的。我不知道有什么与之相关的最

我注意到当我使用
[Serializable]
而不是
[Serializable()]
时,代码仍然可以编译


有没有一条规则可以省略括号?这是一种好的做法吗?除非我遗漏了一些东西,否则它对我来说更具可读性。

关于最佳实践,我在子主题中没有看到任何特定的规则


通常,我发现手工键入属性的人会忽略空参数,但代码生成几乎总是显式地包含它们

如果要使用的属性构造函数没有参数,并且不想指定任何可选参数(属性值),则可能会错过
()


有关更多详细信息,请参见

是从语言角度来看,省略属性是合法的。我不知道有什么与之相关的最佳实践,但总的来说,我发现如果没有必要的话,开发人员会省略paren