Мне просто интересно, есть ли у кого-нибудь метод привязки свойств DateTime к моделям, чтобы они отображались в представлениях в выбранном пользователем часовом поясе, но Модель использует их в качестве UTC для хранения в базе данных.
Я использую ASP.NET MVC 3 с базой данных SQL Server 2005, но вскоре она будет обновлена до 2008 года и будет означать, что я могу использовать новые типы datetime, если это поможет с решением.
Я использую код изэто сообщение , и это хорошо работает при привязке информации о дате и времени, опубликованной в представлении, и я предполагаю, что с небольшим дополнительным кодом, я могу легко преобразовать данные в UTC.
ТакЯ предполагаю, что у меня есть 2 варианта, с которыми мне нужна помощь:
- Пользовательский рендерер
Есть ли способ переопределить объект, который отображает данные в представление, чтобыДата UTC преобразуется в часовой пояс пользователя при отображении представления, тогда уже имеющийся у меня пользовательский связыватель преобразует его обратно для хранения в БД.
- Является лилучший способ, о котором я не знаю?
Эта функция доступна на многих сайтах (я уже использую ее в первой версии этого сайта, которую я сделал в обычном ASP.NET), но прежде чем я пошел и снова использовал те же методы (у меня была статическая функция, которую я вызывал при отображении информации, а затем аналогичный вызов функции перед сохранением), я просто хотел узнать, есть ли у кого-нибудь лучшее решение.
Спасибо Марк