我部署了一个在开发环境中运行良好的 MVC3 应用程序,这是因为开发机器中的日期格式是dd/mm/yyyy
。但是当应用程序部署到服务器时,服务器端开始出现错误,因为日期格式无效,因为服务器中的日期格式是mm/dd/yyyy
。现在我的问题是我需要配置服务器吗?或者只有 IIS 7.0 才适合这种特定的文化?无论答案是什么,请告诉我我该怎么做。我在 Windows Server 2008 R2 和 IIS 7.5 中工作
答案1
如果文化方面的唯一挑战是适用于任何服务器的日期格式,请帮自己一个忙,不要使用特定于文化的日期格式。使用与文化无关的日期格式:
yyyy-MM-dd 在任何地方都相同。
如果您确实想将您的应用本地化为特定文化,那么 web.config 中有一个<globalization>
元素可用于指定该文化。
国际化是一个庞大的话题。关于它的书已经写了很多。可能需要解决多个文化问题。您问的是服务器文化,但连接的客户端呢?如果您真的想适应文化,您可以从 HTTP 标头的 Accept-Languages 部分获取客户端文化。
web.config 中的全球化元素
http://msdn.microsoft.com/en-us/library/hy4kkhe0%28v=VS.100%29.aspx
ASP.NET MVC 3、JavaScript 和 jQuery 中的全球化、国际化和本地化
http://www.hanselman.com/blog/GlobalizationInternationalizationAndLocalizationInASPNETMVC3JavaScriptAndJQueryPart1.aspx
Microsoft 的 jQuery 全球化插件
http://weblogs.asp.net/scottgu/archive/2010/06/10/jquery-globalization-plugin-from-microsoft.aspx
.NET 国际化:开发人员构建全球 Windows 和 Web 应用程序的指南
http://www.amazon.com/NET-Internationalization-Developers-Building-Applications/dp/0321341384