@Html.TextBoxFor(m => m.StartDate,
"{0:yyyy-MM-dd}",
new { @class = "form-control",
id = startDateId,
type = "date",
@readonly = "readonly" })
<label class="error">@Html.ValidationMessageFor(m => m.StartDate)</label>
我想要验证1990 - 2020年。怎么做?
答案 0 :(得分:1)
您必须创建CustomAttribue。正如您所拥有的[必需],tou可以创建您自己的(自定义)。
有关详细信息,请参阅文档:Writing Custom Attributes
对于范围日期控件,您将会这样:
public class MyRangeDatesAttribute : RangeAttribute
{
public MyRangeDatesAttribute ()
: base(typeof(DateTime),
DateTime.Now.AddYears(-6).ToShortDateString(),
DateTime.Now.ToShortDateString())
{ }
}
如何使用它:
[MyRangeDates]
public DateTime StartDate{ get; set; }
另一个解决方案是使用deafult Range Attribue:
[Range(typeof(DateTime), "01/01/1990", "01/01/2020", ErrorMessage="Your error message!")]