我的 Code First 中有一个字符串字段,它可以包含两个正则表达式之一:
([0-5]\d):([0-5]\d)\,(\d{2})
or
(\d{3}),(\d{2})
如何将它们组合在一个领域中?我尝试使用自定义验证。字段验证总是正确的,即使我只输入字母。我无法找出我做错了什么。
[CustomResult]
public string Resultstring { get; set; }
和
public class CustomResultAttribute : ValidationAttribute
{
public override bool IsValid(object value)
{
if (value == null)
{
return false;
}
// 00:00,00
if (Regex.IsMatch(value.ToString(), @"([0-5]\d):([0-5]\d)\,(\d{2})"))
{
return true;
}
// 000,00
if (Regex.IsMatch(value.ToString(), @"(\d{3}),(\d{2})"))
{
return true;
}
return false;
}
}