Чтение даты из базы данных в неправильном формате

У меня есть поля даты в базе данных 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 для даты

Другие вопросы по тегам