Проверка на стороне клиента для моего адреса электронной почты - PullRequest
2 голосов
/ 01 апреля 2012

У меня есть этот атрибут в моей модели представления:

    [CustomRequired, EmailRegex]
    [Display(Name = "KeepInformedPersonMail", ResourceType = typeof (UserResource))]
    public string Email { get; set; }

EmailRegex выглядит следующим образом:

public class EmailRegexAttribute : RegularExpressionAttribute
{
    private const string EmailPattern =
        @"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";

    public EmailRegexAttribute()
        : base(EmailPattern)
    {
        ErrorMessageResourceType = typeof(UserResource);
        ErrorMessageResourceName = "InvalidEmail";
    }
}

Он работает для проверки на стороне сервера, но не на стороне клиента.

Если я заменим EmailRegex на следующий, он будет работать как на стороне клиента, так и на сервере:

    [CustomRequired]
    [RegularExpression(@"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$", ErrorMessage = "Please enter a valid e-mail adress")] 
    [Display(Name = "KeepInformedPersonMail", ResourceType = typeof (UserResource))]
    public string Email { get; set; }

Может ли кто-нибудь объяснить мне, как я могу пройти проверку на стороне клиента и сервера для моего начального EmailRegex?

Спасибо.

1 Ответ

0 голосов
/ 01 апреля 2012

Этот ответ должен решить вашу проблему

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...