按UI文化格式化日期,但浮动和数字为InvariantCulture

时间:2016-10-10 07:10:43

标签: c# asp.net .net

在我的.NET Core Web应用程序中,我将UI文化更改为与用户对应的文化。但是,当我输出浮点数等时,我希望它是InvariantCulture,因为我在解析时遇到了很多问题。

例如,在丹麦,小数点分隔符是逗号,而不是点。

如果我的流量为8.5,则将其打印为8,5。 但是,当我然后保存它(例如从输入到我的模型中的float属性)时,我将其提交为8,5,但.NET无法在浮点数中将其解析为8.5。它只会变成85。

因此,我希望将浮点数和数字完全作为InvariantCulture,因为将它一直转换是一件痛苦的事。

关于如何做到这一点的任何想法?

1 个答案:

答案 0 :(得分:0)

当然,.Net可以正确解析!这是IFormatProvider中的float.Parse参数:

CultureInfo ci = new CultureInfo("dk-DK");
float x = float.Parse("8,5", ci);