MVC3日期验证

时间:2012-08-08 21:38:54

标签: c# asp.net asp.net-mvc-3 validation razor

http://thewayofcode.wordpress.com/2012/01/18/custom-unobtrusive-jquery-validation-with-data-annotations-in-mvc-3/

我尝试从上面的链接中提取样本,但无法正确使用。我不确定我做错了什么?

我复制了模型验证

 [DataType(DataType.Date)]
    [DisplayName("Start Date of Construction")]
    [DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
    public DateTime? StartDate { get; set; }

[DataType(DataType.Date)]
[DisplayNameAttribute("End Date of Construction")]
[DisplayFormat(DataFormatString = "{0:MM/dd/yyyy}", ApplyFormatInEditMode = true)]
[DateGreaterThan("StartDate", "Estimated end date of construction must be greater than the start date of the construction")]
public DateTime? EndDateOf { get; set; }

其次是DateGreaterThan代码。

在视图

  @Html.EditorFor(model => model.StartDate)
  @Html.EditorFor(model => model.EndDate)
   @Html.ValidationMessageFor(model => model.StartDate)
   @Html.ValidationMessageFor(model => model.EndDate)

但是按钮点击没有任何内容,如果任何人都可以发光。它会非常有用,甚至任何其他不同的方式都可以理解。同样试图在模型中选择一个值时从模型获得验证工作下拉和在文本框中输入的值。

1 个答案:

答案 0 :(得分:1)

  1. 而不是[DisplayName("Start Date of Construction")]应使用[Display(Name="Start Date of Construction")]
  2. 而不是[DisplayNameAttribute("End Date of Construction")]应使用[Display(Name="End Date of Construction")]
  3. 看看你是否至少得到了这个运行。您的数据注释属性搞砸了,只需在网上查找样本。