早上好
对于新手问题深表歉意。我刚刚开始使用 ASP.NET 国际化设置。
背景信息:
我有一个显示 <table>
的网站HTML 对象。在那<table>
HTML 对象,我有一列显示日期。我的服务器在美国,这些日期显示为 MM/DD/YYYY
.我的许多用户通过 Excel 插入此网页,通过数据 --> 导入外部数据 --> 导入 Web 查询界面。我的用户大部分都在美国,因此这些日期会正确显示在他们的 Excel 屏幕中。
现在我需要让该网页适用于英国用户。照原样,他们将日期下载为 MM/DD/YYYY
,这使得他们的电子表格无法使用,因为他们的区域设置设置为 DD/MM/YYYY
.
我的问题是:
如何让网络服务器意识到传入的请求有一个 en-GB
文化背景?我可以设计自己的小自定义解决方法,但我确信我不是第一个遇到这种情况的程序员。专业人士如何处理这个问题?我正在寻找一种相对简单且可快速提出的解决方案,但我不想只是将我自己逻辑中的一些蹩脚的错误片段放在一起——我将在 6 个月后感到恐惧。
非常感谢, -艾伦。
最佳答案
几点:
元素还需要属性 culture="auto"。 uiCulture 属性影响用于检索资源的语言。 culture 属性影响用于格式化数字和日期的文化。 如 this MSDN article 中所述, 完全依赖浏览器设置来确定页面的 UI 文化不是最佳做法。用户经常使用未按其偏好设置的浏览器(例如,在网吧中)。您应该为用户提供一种方法来明确选择页面的语言或语言和文化(CultureInfo 名称)。
关于c# - ASP.NET 全局化——显示日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/302160/