c# - ASP.NET 全局化——显示日期

标签 c# asp.net internationalization globalization

早上好

对于新手问题深表歉意。我刚刚开始使用 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/

相关文章:

c# - 在没有 System.Web 的情况下使用 OWIN 时使用什么代替 HttpContext

c# - 日期时间 Jquery datetimepicker

asp.net - 使用 open xml sdk 2.0 的 .net 电子表格样式表

java - 以一种语言格式化货币,与国家无关

javascript - Moment.js : getting translated text for the terms "day", "hour"、 "second"和 "minute"

java - 一台 Apache Tomcat 应用程序服务器,带有 2 个已配置的 war 应用程序和一个 MessageSource 异常

c# - 有没有办法禁用或修改 .NET XML 解析器的严格性?

c# - 通过特定搜索从多个表中获取记录

c# - 托管 VCL.Arrow 键和 Tab 键

c# - SQL 超时在不应该的时候过期