【问题标题】:Change date format in whole application在整个应用程序中更改日期格式
【发布时间】:2015-01-11 14:09:31
【问题描述】:

我正在开发 asp.net mvc2 应用程序。问题是当我以MM/dd/yyyy 格式显示日期时应用程序工作,但我必须以dd/MM/yyyy 格式向用户显示日期。我以这种格式设置日期,但后来我遇到了网络服务问题,因为它期望日期格式为MM/dd/yyyy,我总是收到错误。

首先我想写一个简单的方法,将日期从一种格式转换为另一种格式,并显示在dd/MM/yyyy。但是我必须匹配使用日期的方法,并且我必须在很多地方进行更改。

我尝试在 Web 配置文件中使用全球化,例如

​    <system.web>
​​        <globalization 
             requestEncoding="utf-8"
             responseEncoding="utf-8"
             culture="en-GB"
             uiCulture="en-GB" 
        />
    </system.web>

但这对我不起作用。当我向用户显示时,有什么方法可以更改日期格式,然后网络服务可以接受吗?

谢谢

【问题讨论】:

标签: asp.net-mvc asp.net-mvc-2 globalization


【解决方案1】:

在我看来,en-GBcultureuiCulture 的正确设置,因为这是具有您想要向用户显示的日期格式的文化:dd/MM/yyyy

在您调用需要MM/dd/yyyy 的API 的地方,您应该明确指定格式为MM/dd/yyyy,如下所示:

myDate.ToString("MM/dd/yyyy", CultureInfo.InvariantCulture);

我将 CultureInfo.InvariantCulture 放在那里,这样序列化就不会受到应用程序的 cultureuiCulture 设置的未来更改的影响。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-22
    • 1970-01-01
    • 2023-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多