代码之家  ›  专栏  ›  技术社区  ›  Walter

为什么我的ASP.Net日期格式变化不稳定?

  •  2
  • Walter  · 技术社区  · 15 年前

    <input id="OrderDateTextBox" type="text" value='<%# Eval("OrderDate", "{0:d}") %>' />
    

    这通常按预期工作,但有时日期格式显示d/m/y而不是m/d/y。发生这种情况时,页面刷新将显示正确的日期格式。

    <globalization enableClientBasedCulture="false" culture="en-US" uiCulture="en-US" />
    

    我还尝试在初始化时设置区域性:

    protected override void InitializeCulture()
    {
        UICulture = "en-US";
        Culture = "en-US";
        Thread.CurrentThread.CurrentCulture =
            CultureInfo.CreateSpecificCulture("en-US");
        Thread.CurrentThread.CurrentUICulture =
            new CultureInfo("en-US");
    
        base.InitializeCulture();
    }
    

    <%# DateTime.Parse(Eval("OrderDate").ToString()).ToString("d", CultureInfo.CreateSpecificCulture("en-US")) %>
    

    但那不应该是必要的。谢谢你的帮助。

    1 回复  |  直到 15 年前
        1
  •  1
  •   ChessWhiz    15 年前

    而不是使用 {0:d} 根据设置日期格式的区域性,可以尝试将日期强制设置为所需的格式。例子:

    <%# Eval("OrderDate", "{0:MM/dd/yyyy}") %>
    
    推荐文章