En una aplicación ASP.NET MVC, estoy intentando enviar varios objetos con un solo formulario. Puedo hacer que tipos simples publiquen de nuevo, pero tengo problemas con tipos complejos. Siento que he imitado el ejemplo proporcionado por Phil Haack en su publicación de blog Model Binding To A List pero sin suerte. Incluso yendo tan lejos como copiar su código, fue en vano.ASP.NET MVC: publicar objetos complejos múltiples con el formulario
Estoy intentando rellenar las propiedades ProjectNum
y TaskNum
de un conjunto de objetos MachineLicenseBillback
. Lamentablemente, el IList<MachineLicenseBillback> machinePts
siempre termina como un nulo cuando se publica.
¿Qué me estoy perdiendo?
Clase
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; }
}
Acción
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult TrueUp(int id, IList<MachineLicenseBillback> machinePts)
{
// ...
}
Formulario
<% 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" />
<% } %>
yo también he tenido no hay éxito haciendo que el código de muestra de Phil Haack funcione. También intenté algunas otras muestras vinculadas sin suerte. –