大家好我有以下明确的验证
[Required]
[RegularExpression("{0:d/M/yyyy HH:mm:ss}" ,
ErrorMessage = "Wrong Syntax")]
public string Posted { get; set; }`
但它不允许以下输入显示为日期和时间的示例: 12/12/2011 00:00:00(我不希望这些确切的数字,日期和时间应该允许按日期和时间标准逻辑允许的任何数字)
即使输入正确的代码,我也会收到错误消息“Wrong Syntax”。似乎是什么问题。任何帮助将非常感谢谢谢你
答案 0 :(得分:4)
这是因为RegularExpressionAttribute
需要一个正则表达式模式,并且您提供的是.NET字符串格式模式(MSDN: RegularExpressionAttribute Class)。
对于基本格式验证,您需要使用以下内容:
[RegularExpression(@"\d{2,2}/\d{2,2}/\d{4,4} \d{2,2}:\d{2,2}:\d{2,2}")]
答案 1 :(得分:0)
使用真正的正则表达式替换RegularExpression
属性中的字符串。从这个正则表达式的库网站尝试其中一个:
http://regexlib.com/DisplayPatterns.aspx?cattabindex=4&categoryId=5&AspxAutoDetectCookieSupport=1
尝试第一个。
答案 2 :(得分:0)
有关MVC中客户端和服务器验证的完整指南(使用类似TextBoxFor的内容),请参阅我的答案: Validate Date in MM/dd/YYYY format in mvc