Golden Basim Ответов: 0

Как вставить это значение datetime в БД с помощью EF 31/12/2021 11:59:59 PM (конец дня в году)


как вставить это значение datetime в БД с помощью EF 31/12/2021 11:59:59 вечера (конец дня в году)

1 - я создал это поле fiscal_year_end и его тип данных ЗНАЧЕНИЕ DATETIME.
2 - теперь я пытаюсь обновить запись со значением fiscal_year_end
var DB1 = ConnectionTools.OpenConn();
var SS = DB1.ad_system_settinges.Find(1);
SS.fiscal_year = NewYear;
SS.fiscal_year_start = NewYear_start;
SS.fiscal_year_end = NewYear_end;
DB1.SaveChanges();
где эта переменная NewYear_end это значение 31/12/2021 11:59:59 вечера
но когда я проверил вставленное значение (используя мой интерфейс проекта, а также используя workbench), я обнаружил, что это поле fiscal_year_end это значение 2022-01-01 00:00:00 Это означает, что он был округлен до следующего дня автоматически (была добавлена 1 секунда).

Что я уже пробовал:

я поставил точку останова после этой строки
SS.fiscal_year_end = NewYear_end;
и я знаю, что есть эта ценность 31/12/2021 11:59:59 вечера

MadMyche

Какая же это ценность; ПС.fiscal_year_end или NewYear_end?
Что произойдет, если вы перейдете к следующей строке; является ли значение тем же самым?

Golden Basim

я поставил точку останова после этой строки

 SS.fiscal_year_end = NewYear_end;
и я обнаружил, что оба ss.fiscal_year_end или NewYear_end имеют это значение 31/12/2021 11:59:59 вечера

Richard MacCutchan

Зачем вам нужно оба раза? Если вы просто установите начало года на первый день в 00:00:00, то вычислить дату окончания будет несложно.

Golden Basim

Да, ваши слова логичны, я действительно это сделаю, но я также хотел бы знать причину, по которой значение неправильно вставляется в базы данных

Richard MacCutchan

Мы не можем сказать вам, почему это неправильно, поскольку у нас нет доступа ни к вашему коду, ни к вашим данным. Вам нужно использовать свой отладчик, чтобы точно увидеть, что происходит, когда вы запускаете приведенный выше код.

Member 13541763

уточните, сталкиваетесь ли вы с исключениями или неожиданными данными?

Golden Basim

нет , этот код просто вставляет неверное значение

Maciej Los

Вы действительно в этом уверены NewYear_end переменная-это хранение 31/12/2021 11:59:59 вечера ценность?
Можете ли вы показать нам, как вы инициируете эту переменную (объявление и инициирование)?

0 Ответов