ASP.NET Application is displaying american date formats

后端 未结 2 784
长情又很酷
长情又很酷 2021-01-22 04:56

One of my development applications has today started displaying American formatted short dates where I am expecting British formatting.

The dates are being rend

相关标签:
2条回答
  • 2021-01-22 05:20

    The windows regional settings does not affect any website, unless the website is programmed to get the regional settings from the browser preferred languages and apply them to the ASP site

    Use the globalization option in the web.config

    <globalization culture="es-AR" uiCulture="es" />
    

    OR

    Set the value in the global.aspx Application_BeginRequest method

    Sub Application_BeginRequest(ByVal sender As Object, ByVal e As EventArgs)
        Dim lang As String = "es"
        If HttpContext.Current.Request.Path.Contains("/en/") Then
            lang = "en"
        ElseIf HttpContext.Current.Request.Path.Contains("/pt/") Then
            lang = "pt"
        ElseIf HttpContext.Current.Request.Path.Contains("/es/") Then
            lang = "es"
        End If
        Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo(lang)
        Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(lang)
    End Sub
    
    0 讨论(0)
  • 2021-01-22 05:21

    From MSDN

    The value of the current DateTime object is formatted using the pattern defined by the DateTimeFormatInfo.ShortDatePattern property associated with the current thread culture. The return value is identical to the value returned by specifying the "d" standard DateTime format string with the ToString(String) method.

    Have you tried changing the culture for the current thread? This can be set on a per page basis as well - http://msdn.microsoft.com/en-us/library/bz9tc508%28v=vs.85%29.aspx.

    0 讨论(0)
提交回复
热议问题