DateTime и проверка строки - PullRequest
       1

DateTime и проверка строки

0 голосов
/ 14 ноября 2011

У меня простой вопрос о DateTime в c #.

У меня есть текстовое поле, в котором я прошу пользователя ввести дату.

Я хочу проверить, что текстовое поле не пустое, прежде чем анализировать строку с датой и временем, чтобы проверить правильность формата даты.

Вот немного моего кода:

String strStartDate = txtStartDate.txt;

DateTime StartDate = DateTime.Parse(strStartDate);

У меня есть другие текстовые поля для имен и тому подобное, и я также проверяю, являются ли они пустыми, с помощью оператора if, подобного этому (то же самое, если утверждение if проверяется, если strStartDate пусто):

    if (strFirstName.Trim() == "")
    {

        txtFirstName.BackColor = System.Drawing.Color.Yellow;

        errorMessage = errorMessage + "First Name may not be empty. ";
    }

    else
    {

        txtFirstName.BackColor = System.Drawing.Color.White;

    }

Отладчик останавливается, как только я пытаюсь нажать кнопку отправки, он говорит, что String не был распознан как допустимый DateTime.

Есть ли способ проверить, пуста ли строка перед проверкой DateTime?

Ответы [ 2 ]

2 голосов
/ 14 ноября 2011

Вы также можете использовать TryParse:

        string SomeDate = "1/1/2012";
        DateTime dt;
        var success = DateTime.TryParse(SomeDate, out dt);

Затем вы можете проверить успех, чтобы увидеть, была ли это действительная дата или нет. Это защитит вас от любой недопустимой строки даты, а не только от пустой или нулевой строки.

0 голосов
/ 14 ноября 2011

String.IsNullOrEmpty будет делать то, что вы хотите

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