这似乎是一个简单的问题,但由于某种原因,我无法在任何地方找到答案。基本上,我希望能够实现一个采用NamedParameters的构造函数。
通过命名参数,我并不是指具有默认值的参数(可选参数),例如:
public SomeMethod(){
string newBar = Foo(bar2 : "customBar2");
}
public string Foo(string bar1 = "bar1", bar2 = "bar2" ){
//...
}
我试图实现的一个很好的例子是来自System.Web.Mvc程序集的AuthorizeAttribute。您可以使用以下方式:
[Authorize(Roles = "Administrators", Users = "ThatCoolGuy")]
public ActionResult Admin(){
}
intellisense 中的构造函数签名类似于以下示例,我相信(请确认)那些 NamedParameters 正在映射到类属性。
AuthorizeAttribute.AuthorizeAttribute( NamedParameters... ) 初始化 System.Web.Mvc.AuthorizeAttribute 类的新实例
命名参数:
- 订单整数
- 用户字符串
- 角色字符串