2011-04-10 55 views
17

我试图在ASP.NET MVC中呈现复合ProductCatalog视图。这要求我每页显示多个Product视图。每个产品视图都是一个单独的表单。我需要表单字段以id为基础的前缀,以便在呈现的文档中没有重复的ID。有没有一种方法来定义一个前缀,以应用于由Html扩展生成的所有表单字段,还是我需要手动构建它?如何在ASP.NET MVC中定义表单字段前缀

回答

25

是的,你可以定义基础上,正在执行的操作您的视图中的控件的前缀,考虑下面的代码,应该是发生在你的GET操作方法:

ViewData.TemplateInfo.HtmlFieldPrefix = "DESIRED_PREFIX"; 

这将添加所需的前缀你的浏览控制,但为了对付他们回来时,你发布你的页面,你将需要重新定义的前缀,在您的文章的行动为以下签名:

public ActionResult Create([Bind(Prefix = "DESIRED_PREFIX")] YOUR_ENTITY model) 

让我知道它的工作, 谢谢。