Чтение даты из базы данных в неправильном формате
У меня есть поля даты в базе данных SQL, которые хранятся в формате date и datetime2.
При выполнении метода Read для объекта SmartObject, связанного с этой таблицей, он пытается принудительно ввести дату в американский формат (MDY) и либо отображает эту дату, если она действительна, либо не отображает что-либо (например, если день больше 12).)
Однако при выполнении метода List данные отображаются правильно, как и при использовании SmartObjectTester для выполнения метода Read объекта.
Есть ли способ предотвратить это, и чтобы поле Date читалось в формате DMY и, таким образом, отображалось правильно?
2 ответа
Эта проблема возникла из-за того, что конфигурация Web.config была настроена на использование другой культуры, отличной от той, на которой установлен сервер K2.
Чтобы решить эту проблему, убедитесь, что они одинаковы, и Сервер должен иметь возможность правильно читать из БД и, таким образом, отображать на SmartForms без изменения даты.
Соответствующая строка для изменения в Web.Config:
<add key="SmartObject.ExecutionCulture" value="en-US" />
Вы можете изменить тип данных поля и в конструкторе стилей изменить настройку "Дата и время", чтобы использовать нужный вам формат. Всегда лучше использовать настройки пользователя. Стиль Builder для даты