我运行到哪里使用内置的全球化设施的ASP.NET应用程序崩溃的情况下。
在与文化=“自动”指令,用中性文化为他们的浏览器语言(如“ZH-汉斯”)用户的ASP.NET页面会产生以下异常:
文化“ZH-汉斯”是一个中性的文化。 它不能在格式化和分析使用,因此不能设置为线程的当前文化。
在System.Globalization.CultureInfo.CheckNeutral(CultureInfo的培养)在System.Threading.Thread.set_CurrentCulture(CultureInfo的值)System.Web.UI.Page.set_Culture(字符串值)ASP.somePage_aspx .__ BuildControlTree(somePage_aspx __CTRL)在ASP .somePage_aspx.FrameworkInitialize()
有任何想法吗? 垃圾送入文化/的UICulture参数一般似乎被忽略,但这种情况下,使未处理的异常。
首先,你可以考虑在你的<%@页%>声明设置的UICulture =“自动”,以及文化=“自动”。
现在,我没有看到我的.NET 4.0(测试版)安装此摄制,所以这可能是在.net 3.5的产品缺陷。
下面是了解中性文化的重要资源和的UICulture和文化之间的区别: http://blogs.msdn.com/ddietric/archive/2008/02/05/yacvcp-yet-another-currentculture-vs-currentuiculture-post的.aspx
希望这是有帮助的。
我有同样的问题,bonking我的头一会儿墙后发现了正确的答案在我的鼻子。
我的问题是在不理解的CurrentCulture和的CurrentUICulture之间的差异。 所不同的是的CurrentCulture用于格式化日期,数字和执行排序, 的CurrentUICulture被用于从资源查找文化的特定字符串。
我有一些代码,看起来像
return input.ToString("C", System.Globalization.CultureInfo.CurrentUICulture);
当它应该被
return input.ToString("C", System.Globalization.CultureInfo.CurrentCulture);
当你开始尝试格式特定的文化项目与非特定的文化,你会得到System.NotSupportedException。
你不能设置开始请求的文化? (注:asp.net请求可以使您需要连接到移动线程以及线程之间跳转。)
文章来源: ASP.NET Globalization: Culture=“auto” page directive with neutral culture crash?