oleja1ee7
@oleja1ee7

Как исправить The conversion of a nvarchar data type to a datetime data type?

Здравствуйте.
Имеется 2 GridView, при выборе строки в первом, связанные данные должны открываться во втором.
Но при нажатию пункта "выбор" выходит исключение:
"Сведения об исключении: System.Data.SqlClient.SqlException: The conversion of a nvarchar data type to a datetime data type resulted in an out-of-range value."
private void LinesCount()
        {
            GridView2.DataBind();
       
            int count = GridView2.Rows.Count;
            Label1.Text = "Всего строк - " + count.ToString();
            if (count == 0)
                Button13.Visible = true;
            else
                Button13.Visible = false;
        }

        protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
        {
            DateChecking();
            LinesCount();
        }

Скриншоты

5e4e5a77aba88285073735.jpeg5e4e5a7f96b2d089213081.jpeg


Ошибка указывает на строку GridView2.DataBind();
Дата в базе указана в нужном формате, при попытке изменить тип с даты на nvarchar, ошибка уходит, но отображаемые данные изменяют формат отображения.
Буквально месяц назад всё запускалось нормально, сделал по новой, всё равно та же самая ошибка.
  • Вопрос задан
  • 823 просмотра
Решения вопроса 1
oleja1ee7
@oleja1ee7 Автор вопроса
Ответ оказался весьма прост, прошу прощения)
т.к. метод функция DateChecking получала данные настоящего времени. то необходимо было преобразовать:
DateField.Value = DateTime.Now.ToShortDateString();

в
const string dateTimePattern = "yyyy.MM.dd";
            DateField.Value = DateTime.Now.ToString(dateTimePattern);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы