繁体   English   中英

CultureInfo数据来自哪里?

[英]Where does CultureInfo data come from?

当我为en-CA创建文化信息对象( new CultureInfo("en-CA") )时,在生产环境中和开发环境中得到的ShortDatePattern不同。

我没有访问生产服务器的权限,那么我只是假设填充对象的信息来自区域设置。

我尝试将开发区域设置更改为针对en-CA具有不同的ShortDatePattern ,但我仍收到"MM/dd/yyyy"而不是"yyyy-MM-dd"

此配置来自何处?我的本地环境与为同一CultureInfo返回不同的ShortDatePattern的生产环境之间可能有什么区别?

码:

var someDate = DateTime.now;
var cultureInfo = new CultureInfo("en-CA");
var formatedDate = someDate.ToString(cultureInfo.DateTimeFormat.ShortDatePattern);

这是机器文化,要在您的应用上强制使用文化,您必须将其添加到Web配置或应用配置中

要为所有页面设置UI文化,请在Web.config文件中添加一个全球化部分,然后设置uiculture和文化属性,如以下示例所示:

<globalization uiCulture="en-CA" culture="en-CA" />

这是MSDN来源

这是因为默认情况下CultureInfo构造函数使用自定义的用户配置。 使用需要额外的bool参数useUserOverride的构造函数,并传递false

文档中

useUserOverride

一个布尔值,指示是使用用户选择的区域性设置(true)还是使用默认区域性设置(false)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM