0

我有一个网站,可以将我的模型中的日期保存到数据库中。

启动我的站点后,我意识到服务器具有美国区域设置,因此我必须确保公共站点上的所有日期都以英国格式格式化。

但是,现在当我转到“创建”页面并选择一个日期并单击“保存”时,我收到错误“22/11/2009”值对“日期”字段无效。这必须来自我模型上的默认 DataAnnotations。

我能做些什么让它接受英国格式的日期吗?

4

3 回答 3

2

我设法通过将其放入 web.config 来使其工作

<globalization culture="en-GB"/>
于 2009-11-23T09:10:46.623 回答
1

你试过这个吗?如果这个站点只在英国使用,你可以把它放在 Global.asax Application_Init 中。如果是基于用户的,可以放在Application_BeginRequest中。这将为应用程序中的所有日期和数字提供默认格式和解析。

Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo("en-gb");
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en-gb");
于 2009-11-22T19:48:52.017 回答
1

执行 SO 的操作:将所有日期保留为 UTC,并将它们呈现为 UCT,并为 GMT/UTC/Zulu 附加“Z”。它可能并不理想,但有时从简单性中获得的收益超过了替代方案的成本。考虑一下。

于 2009-11-23T08:34:37.030 回答