在Jquery.i中,我正在从jquery到MVC3 Atrribute的验证之下进行迁移。
if($(“#PrevPlanMonths”)。val()!=''&& isNaN($(“#PrevPlanMonths”)。val())){validationSummary = validationSummary +“!Previous Plan duration is is无效。\ n“; isValid = false; }
.NET public short PreviousPlanDuration {get;组; }
答案 0 :(得分:0)
如果我理解你的问题,你就会问如何使用MVC属性获得相同的验证。如果这是你想要的,你应该尝试:
[Required(ErrorMessage="Previous Plan duration is invalid")]
[DisplayName("Previous Plan Duration")]
public short? PreviousPlanDuration {get;set;}
在你的观点中:
<div>
<div><%: Html.LabelFor(model => Model.PreviousPlanDuration) %><%: Html.ValidationMessageFor(model => Model.PreviousPlanDuration) %></div>
<div><%: Html.EditorFor(model => Model.PreviousPlanDuration) %></div>
</div>
如果您想对该值执行某些操作,因为它是可空类型,请使用:
PreviousPlanDuration.Value
答案 1 :(得分:0)
如果我正确阅读了您的验证,如果该值不为空,您正在检查它是否为数字?由于您已将属性声明为short(整数),因此当您尝试对bind进行建模时,如果该值不是整数,则UpdateModel将失败并且数据类型不匹配。至于required,只需使用Required属性修饰属性。
[Required("This field is required")]
public short PreviousPlanDuration { get; set; }