我有这个型号:
[DisplayName("Date of Birth:")]
[Required(ErrorMessage = "Birth Date is Required.")]
[DisplayFormat(NullDisplayText = "No Date of Birth is Selected.")]
public DateTime BirthDate { get; set; }
[DisplayName("Age:")]
public int Age
{
get
{
DateTime now = DateTime.Today;
int age = now.Year - BirthDate.Year;
if (BirthDate > now.AddYears(-age)) age--;
return age;
}
}
在我的部分视图中:
<div class="editor">
@Html.LabelFor(model => model.BirthDate)
@Html.TextBoxFor(model => model.BirthDate, new { @class = "date" })
@Html.ValidationMessageFor(model => model.BirthDate)
</div>
<div class="editor">
@Html.LabelFor(model => model.Age)
@Html.DisplayTextFor(model => model.Age)
@Html.ValidationMessageFor(model => model.Age)
</div>
生日一旦填满,Age就不会显示计算出的年龄。 如果我遗失了什么,请告诉我?
答案 0 :(得分:0)
我很确定你需要提供一个setter和getter才能使绑定正常工作。
尝试为Age添加setter,即使它没有做任何事情。