Arn*_*501 3 validation asp.net-mvc-3
我有一个带有 String 属性和以下数据注释的 ViewModel :
编辑以使用字符串
[DataType(DataType.Date, ErrorMessage="Not Working !!!")]
public String StringBirthDate1 { get; set; }
Run Code Online (Sandbox Code Playgroud)
这就是我的看法
@Html.EditorFor(model => model.StringBirthDate1 )
@Html.ValidationMessageFor(model => model.StringBirthDate1)
Run Code Online (Sandbox Code Playgroud)
如果我运行我的应用程序并输入一个无效的日期,如“---”或 29.02.1900,我不会收到任何验证错误!
好吧,我已经放弃尝试使用内置 MVC 工具进行数据验证了!
我做了一个自定义验证属性:
public class ValidDateStringAttribute : ValidationAttribute
{
public override bool IsValid(object value)
{
DateTime dtout;
if (DateTime.TryParse(value.ToString(), out dtout ))
{
return true;
}
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的视图模型,用自定义属性装饰:
[ValidDateString(ErrorMessage="Invalid date format")]
public String BirthDate1 { get; set; }
Run Code Online (Sandbox Code Playgroud)
奇迹般有效 :-)
| 归档时间: |
|
| 查看次数: |
6553 次 |
| 最近记录: |