ASP.NET MVC绑定方法而不是参数的属性

时间:2009-09-14 02:20:06

标签: c# asp.net-mvc

我知道你可以这样做:

public ActionResult DoSomething([Bind(Exclude = "CreationDate")] Item item)
{ /*...*/ }

public ActionResult DoSomething([Bind(Exclude = "CreationDate")] Item item) { /*...*/ }

但是,我发现您还可以在方法的顶部附加该Bind属性,例如

[Bind(Exclude = "CreationDate")] 
public ActionResult DoSomething(Item item)
{ /*...*/ }

这是否具有完全相同的效果?如果绑定到多个参数怎么办?

1 个答案:

答案 0 :(得分:6)

第二种形式是我更常见的形式。据我所知,两种形式完全相同。

Exclude选项采用以逗号分隔的属性列表。排除列表只是从绑定中排除一个或多个参数;它对剩余的参数没有影响。

示例:

[Bind(Exclude="ID, Name")]