我在 InvariantCulture (16.4) 中发布了一个十进制形式值,并且很惊讶它没有到达我的德语系统上的模型。
我必须使用德语格式(16,4)。有没有办法配置用于解析参数的语言?
编辑:调试到源代码后发现 ValueProviderDictionary 中的语言特定部分
填充字典。那里的文档内容如下:
- 请求表单提交(应该具有文化意识)
- 来自 RouteData 的值(可能来自输入的 URL 或来自路由的默认值)
- URI 查询字符串
1.takes CurrentCulture 2./3。采取不变文化
这对我不起作用:如果我发布一个值或将其放入查询字符串中,我不会期望在使用文化方面有不同的行为。如果用户手动填写可解析的值,这可能是必要的,但如果您填写列表框的值,这很奇怪。如果我可以在两个版本之间切换,我认为理想的解决方案是。
无论如何,我现在需要找到一种方法来在调用 PopulateDictionary 之前设置 CultureInfo.CurrentCulture。我就是这样做的:
void Application_BeginRequest(object sender, EventArgs e)
{
Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
}