在ASP.NET MVC應用程序中,我嘗試使用單一表單提交多個對象。我能夠獲得簡單的類型來回發,但是遇到複雜類型的問題。我覺得我已經模仿Phil Haack在他的博客文章Model Binding To A List中提供的例子,但沒有運氣。即使只是複製他的代碼完全無濟於事。ASP.NET MVC - 在表單中發佈多個複雜對象
我想填充一組MachineLicenseBillback
對象的ProjectNum
和TaskNum
屬性。不幸的是,IList<MachineLicenseBillback> machinePts
在發佈時總是以null結尾。
我錯過了什麼?
類
public class MachineLicenseBillback
{
public MachineLicenseBillback() { }
public virtual int MachineId { get; set; }
public virtual string ProjectNum { get; set; }
public virtual string TaskNum { get; set; }
public virtual string VerifiedFlag { get; set; }
public virtual DateTime? RcdChgDateTime { get; set; }
public virtual string RcdChgAgent { get; set; }
}
行動
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult TrueUp(int id, IList<MachineLicenseBillback> machinePts)
{
// ...
}
表
<% using (Html.BeginForm("TrueUp", "Home", new { id = Model.Customer.Id },
FormMethod.Post))
{ %>
<input type="hidden" name="machinePts.Index" value="<%= machine.MachineId %>" />
<input type="text" name="machinePts[<%= machine.MachineId%>].ProjectNum"
value="<%= machine.MachineLicenseBillback.ProjectNum %>" />
<input type="text" name="machinePts[<%= machine.MachineId %>].TaskNum"
value="<%= machine.MachineLicenseBillback.TaskNum %>" />
<input type="submit" value="Submit" />
<% } %>
我也有machinePts [0],machinePts [1],等等Phil Haack的示例代碼沒有成功。我也嘗試了其他一些綁定到列表的示例,但沒有任何運氣。 – 2010-01-25 23:23:12