【发布时间】:2012-04-18 14:45:36
【问题描述】:
我知道你可以像这样在 C# 中为方法添加属性,
ex1.
[HttpPost]
public void Method()
{
//code
}
这意味着必须满足属性才能运行Method()。
而且我知道你可以像这样堆叠属性,
ex2.
[HttpPost]
[RequireHttps]
public void Method2()
{
//More code
}
在您可以使用 Method2() 之前,它会检查属性 1 'AND' 属性 2 是否都满足。
但是你可以'或'属性吗?大概是这样的吧?
ex3.
[HttpPost || RequireHttps]
public void Method3()
{
//Even more code
}
因此,如果满足任一属性,您可以使用Method3()。
编辑:对不起,被称为注释的印象属性。解决了这个问题。
【问题讨论】:
-
不,你不能。出于好奇,您的示例是学术性的,还是您想要完成的?
-
那些不是注释。它们是属性。
-
属性(即您作为注释发布的内容)只是额外的元数据。他们不强制执行任何事情。
-
@mccow002 我试图完成这样的事情。我不够精明,无法故意问这个问题。 :p
标签: c# asp.net-mvc-3 attributes annotations custom-attributes