【问题标题】:IIS Express Formatting Date with Wrong Culture具有错误文化的 IIS Express 格式化日期
【发布时间】:2014-02-10 22:28:44
【问题描述】:

我有一个 DotNetNuke 网站,用于记录员工的工作时间。我使用 IIS Express 和 Visual Studio 2012 在本地计算机上进行开发。

我有一个带有几列的 asp:GridView,其中之一是“asp:BoundField”。在该列中,我显示了一个日期。

多年来,这一直完美无缺,但突然之间,我的日期被格式化为 MM-dd-yyyy 而不是 MM/dd/yyyy。在使用完整 IIS 的生产站点上,日期的格式仍然正确。

我没有对 web.config 进行任何更改,只是为了解决这个问题而弄乱了文化设置。

由于这是 IIS Express,而不是 IIS,我不确定是否有任何可以更改的全球化设置或配置。我强烈怀疑这是我听说过的“文化”问题之一。

包含日期的 asp:BoundField 的标记:

<asp:BoundField DataField="DateWorked" HeaderText="Date" SortExpression="Date" DataFormatString="{0:MM/dd/yyyy}"
    HtmlEncode="False">
    <ItemStyle HorizontalAlign="Center" />
    <HeaderStyle Wrap="False" CssClass="DataGrid_Header" />
</asp:BoundField>

web.config“全球化”标签:

<globalization culture="en-US" uiCulture="en" requestEncoding="UTF-8" responseEncoding="UTF-8" fileEncoding="UTF-8"/>

我不确定接下来要尝试什么。在这一点上,任何帮助将不胜感激。

感谢阅读,

-AS7K

【问题讨论】:

    标签: asp.net vb.net dotnetnuke iis-express


    【解决方案1】:

    在这里找到答案: ASP.NET Application is displaying american date formats

    您可以在 global.aspx "Application_BeginRequest" 方法中使用代码来检测和设置应用程序中的语言。

    【讨论】:

      猜你喜欢
      • 2020-01-16
      • 2019-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多