C# 在post上绑定复杂模型列表
我使用的是MVC 5、C#6和VS 2017。作为我用来填充MVC表单的模型的一部分,我有一个类型为C# 在post上绑定复杂模型列表,c#,asp.net-mvc,model-binding,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;} } 而Ye
Admission
的集合,其中类Admission
定义为
public class Admission
{
public DateTime AdmissionDate {get; set;}
public YesNo EmergencyAdmission {get: set;}
public DateTime DischargeDate {get; set;}
}
而YesNo
是一个enum
。为了简化,我将父模型简化为:
public class Patient
{
public int PatientID {get; set;}
public string PatientName {get; set;}
public List<Admission> Admissions {get; set;}
}
在局部视图中,我使用:
@Html.EditorFor(m => m.AdmissionDate)
@Html.EditorFor(m => m.EmergencyAdmission)
@Html.EditorFor(m => m.DischargeDate)
我有编辑器模板来处理日期和YesNo
enum
我的问题是,我不知道如何在录取名单上绑定post上的模型。如果我使用Request.Form并编写自己的活页夹,则部分视图的项目将作为数组发布,数组结构将在Request.Form中丢失。我见过的唯一解决方案涉及使用相当复杂的JavaScript/jQuery函数。我想做尽可能多的服务器端。如果我能解决这一部分,那么我就有了一种动态添加额外许可的方法。为许可创建一个编辑器,而不是一个部分。使用
RenderPartial()
意味着没有为绑定生成正确的名称
属性(带有必要的前缀)。建议您阅读以了解如何为集合生成表单控件以及如何动态添加和删除集合项,请参考,您是否可以将此添加为答案,以便我可以接受。我将复制它。您可以给我演示一个示例吗?谢谢
@Html.EditorFor(m => m.AdmissionDate)
@Html.EditorFor(m => m.EmergencyAdmission)
@Html.EditorFor(m => m.DischargeDate)