大家好,我正在使用以下数据注释在表单发布中验证我的模型...效果很好,并且正在表单的前端进行验证。

我想添加另一个数据注释,该注释将不允许给定的字符串示例“ asdasd”,我不希望在YourName字段中允许该注释,但我希望它们仍然输出与当前相同的错误消息。

有任何想法吗?

public class Contact
{
    [Required(ErrorMessage = "Please enter your name.")]
    public string YourName { get; set; }

    [Required(ErrorMessage = "Please enter your email.")]
    [DataType(DataType.EmailAddress)]
    public string Email { get; set; }

    [Required(ErrorMessage = "Your missing a subject.")]
    public string Subject { get; set; }

    [Required(ErrorMessage = "You haven't entered a message.")]
    public string Message { get; set; }
}

最佳答案

我会使用RegularExpresstionAttribute。以下正则表达式应该起作用。它测试该值不包含特定字符串。

[RegularExpression(@"^((?!asdasd).)*$", ErrorMessage = "'asdasd' is not allowed.")]

关于c# - 发布到MVC Controller 时使用DataAnnotations排除特定字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23970463/

10-08 22:47