在帖子

时间:2017-05-24 11:48:03

标签: c# asp.net-mvc model-binding

我正在使用MVC 5,C#6和VS 2017.作为我用来填充MVC表单的模型的一部分,我有一个类型Admission的集合,其中定义了类Admission

public class Admission
{
    public DateTime AdmissionDate {get; set;}
    public YesNo EmergencyAdmission {get: set;}
    public DateTime DischargeDate {get; set;}
}

YesNoenum。为简化起见,我将父模型简化为:

public class Patient
{
    public int PatientID {get; set;}
    public string PatientName {get; set;}
    public List<Admission> Admissions {get; set;}
}

可以在客户端动态添加招生。实例化模型时,只有一个空admission。在我有的形式

@foreach (var item in Model.Patient.Admissions)
{
    Html.RenderPartial("Admission", item);
}

然后在部分视图中我使用:

 @Html.EditorFor(m => m.AdmissionDate)
 @Html.EditorFor(m => m.EmergencyAdmission)
 @Html.EditorFor(m => m.DischargeDate)

我有编辑模板来处理日期和YesNo enum

我的问题是我不知道如何在帖子上绑定模型以获取入学名单。如果我使用Request.Form并编写我自己的绑定器,则部分视图的项目将作为数组发布,Request.Form上的数组结构将丢失。我见过的唯一解决方案涉及使用相当复杂的JavaScript / jQuery函数。我想尽可能多地服务器端。如果我可以解决这个问题,那么我就可以动态添加额外的录取。

1 个答案:

答案 0 :(得分:0)

为录取而不是部分编辑。