【发布时间】:2018-03-19 14:10:51
【问题描述】:
我有一类Signature 对象:
public class Signature
{
public int SignatureID { get; set; }
public int FormID { get; set; }
public string Title { get; set; }
public string Email { get; set; }
[Display(Name = "Signed Date:")]
public DateTime? Date { get; set; }
}
我有一个Form.cs 类,它有一个虚拟的签名列表
public virtual List<Signature> Signatures { get; set; }
在我的控制器中,我通过以下方式填充列表:
form.Signatures = repository.Signatures.Where(s => s.FormID == form.FormID).ToList();
在我的表单视图中,我显示了相关签名的列表:
@foreach (var signature in Model.Signatures)
{
<div class="text-center">
<label asp-for="@signature.Title"></label>
<input asp-for="@signature.Title" />
<label asp-for="@signature.Email"></label>
<input asp-for="@signature.Email" />
<label asp-for="@signature.Date"></label>
<input disabled asp-for="@signature.Date">
</div>
}
但是,我不知道如何在表单的 POST 方法上更新相关签名。例如,如果我更改签名的Email 属性并发布表单,模型不会将此更改绑定到Form 对象。在这种情况下,form.Signatures 为空。
如何确保对与表单关联的 <List>Signature 项目的更改在 POST 时更新?
【问题讨论】:
-
副本不适用...
标签: asp.net-mvc asp.net-core model-binding