Проверьте DateTime в бизнес-логике - PullRequest
0 голосов
/ 15 марта 2012

У меня есть поле, где пользователь вводит время (ЧЧ: ММ), и я проверяю значение на стороне клиента. Теперь я хочу проверить значение в бизнес-логике также. Как я могу сделать это?

Введенное значение должно содержать точку с запятой, например "01:23". Мой код до сих пор, я попробовал с tryparse, но не могу получить его! Мне не нужно использовать TryParse, это может быть что угодно.

public TimeSpan Speltid
{
    get
    {
        return this._speltid;
    }
    set
    {
        if(!(DateTime.TryParse(value, out ???))
        {
            //Error - Must have a value
        }

        this._speltid = value;
    }
}

1 Ответ

0 голосов
/ 15 марта 2012

Использовать встроенные валидаторы http://msdn.microsoft.com/en-us/library/7kh55542.aspx. Они могут выполнять как клиентскую, так и серверную проверку.Валидатор RegularExpression полностью подходит для вашей задачи.

Если вы хотите использовать такую ​​же проверку для BL - разработайте CustomValidator с RegEx внутри и вызовом из BL.

Для чч: мм: сс:

bool isOK = Regex.IsMatch(timeTextBox.Text, @"[0-2][0-9]\:[0-6][0-9]\:[0-5][0-9]");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...