asp.net-mvc – 如何使用绑定前缀?

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – 如何使用绑定前缀?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
说如果我有这个表在我的db:产品 @H_301_2@它有过

ProductId
ProductName
ProductType
@H_301_2@现在无论什么原因,我不能命名我的文本框ProductName和ProductType所以现在我的View方法将如下所示

public ViewResult Test([Bind(Exclude ="ProductId")] Product)
@H_301_2@所以现在通过我的游戏什么都不会匹​​配在这个产品,因为他们有不同的名字。

@H_301_2@所以我想这是前缀进来的地方,但我不知道如何使用它。也不怎么使用它和排除在同一时间。

@H_301_2@有人可以给我一个例子吗?

解决方法

前缀使用如下,如果在您的视图中有…
<select name="p.ProductType">....</select>
<input type="text" name="p.ProductName" />
@H_301_2@您可以通过执行类似的操作将传入表单绑定到模型的实例

public ActionResult([Bind(Prefix="p")]Product product)
@H_301_2@你应该注意,如果你命名你的方法参数p,MVC会自动做到这一点。

@H_301_2@如果您尝试同时绑定多个实体(例如,两个名称字段),则前缀可能非常有用。

@H_301_2@要使用排除绑定到某些属性(即避免人们在伪造表单中传递ProductIds),只需将属性名称设置为排除

public ActionResult([Bind(Prefix="p",Exclude="ProductId")]Product product)
@H_301_2@这将确保您的实体上的ProductId永远不会被设置。

@H_301_2@如果您想要绑定两个完全不同的字段名称,例如键入到ProductType,您可以查看自定义模型绑定或只是从自己的FormCollection中获取字段。

原文链接:https://www.f2er.com/aspnet/254298.html

猜你在找的asp.Net相关文章