加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

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

发布时间:2020-12-15 19:05:21 所属栏目:asp.Net 来源:网络整理
导读:说如果我有这个表在我的db:产品 它有过 ProductIdProductNameProductType 现在无论什么原因,我不能命名我的文本框ProductName和ProductType所以现在我的View方法将如下所示 public ViewResult Test([Bind(Exclude ="ProductId")] Product) 所以现在通过我
说如果我有这个表在我的db:产品

它有过

ProductId
ProductName
ProductType

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

public ViewResult Test([Bind(Exclude ="ProductId")] Product)

所以现在通过我的游戏什么都不会匹??配在这个产品,因为他们有不同的名字。

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

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

解决方法

前缀使用如下,如果在您的视图中有…
<select name="p.ProductType">....</select>
<input type="text" name="p.ProductName" />

您可以通过执行类似的操作将传入表单绑定到模型的实例

public ActionResult([Bind(Prefix="p")]Product product)

你应该注意,如果你命名你的方法参数p,MVC会自动做到这一点。

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

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

public ActionResult([Bind(Prefix="p",Exclude="ProductId")]Product product)

这将确保您的实体上的ProductId永远不会被设置。

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读