【发布时间】:2012-10-16 07:14:29
【问题描述】:
我正在使用 ASP.NET MVC 4,但我认为这对于这个问题的目的并不重要。
我的编辑视图有一个相对复杂的模型。像这样:
public class Recipe_model
{
public string Name { get; set; }
public List<Recipe_Ingredient_model> Ingredients { get; set; }
}
成分在哪里
public class Recipe_Ingredient_model
{
public int RecipeID { get; set; }
public int? UnitID { get; set; }
public double? Quantity { get; set; }
public Ingredient_model Ingredient { get; set; }
}
它本身包含成分模型。
当我为此制作表单时,内置的Html.EditorFor() 不适用于Recipe_model 的属性之外的任何内容,因此我使用局部视图来显示每个子的编辑器模型。
就界面而言,这工作正常,但是当我将表单提交到控制器并尝试使用自动绑定到Recipe_model
[HttpPost]
public ActionResult Edit(Recipe_model model)
{
return View(model);
}
它失败是因为部分视图中输入元素的 id 不符合正确的模式(我认为 ParentModel_Property)。
除了硬编码部分视图中的 id 或从控制器中的 FormCollection 手动绑定之外,有没有办法在部分视图中生成正确的 id,以便模型在提交时自动绑定?
【问题讨论】:
-
可以贴出部分视图的代码吗?
标签: asp.net asp.net-mvc asp.net-mvc-3 asp.net-mvc-4