C#aspx十进制千位用逗号和十进制用点

时间:2016-01-23 11:23:24

标签: c#

我希望在/home/username/Development/learning/romannumeralconverter 上使用ToString方法获得如下输出:

decimal

现在就像:

1.234,56

在我使用的1234,56 中:

global.asax.cs

但是没有用。是否有任何全球解决方案或如何解决我的问题?

2 个答案:

答案 0 :(得分:1)

在.net 4.5中,您可以使用CultureInfo,它允许您为当前AppDomain中的所有线程设置默认区域性。

https://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.defaultthreadcurrentculture(v=VS.110).aspx

var culture = new CultureInfo("sl-SI");

CultureInfo.DefaultThreadCurrentCulture = culture;
CultureInfo.DefaultThreadCurrentUICulture = culture;

CultureInfo.DefaultThreadCurrentCulture.NumberFormat.NumberDecimalSeparator = ",";
CultureInfo.DefaultThreadCurrentCulture.NumberFormat.NumberGroupSeparator = ".";

答案 1 :(得分:0)

将您的代码放入Global.asax文件中的protected void Application_BeginRequest(object sender, EventArgs e) { var culture = new CultureInfo("sl-SI"); Thread.CurrentThread.CurrentCulture = culture; Thread.CurrentThread.CurrentUICulture = culture; Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator = ","; Thread.CurrentThread.CurrentCulture.NumberFormat.NumberGroupSeparator = "."; }

Application_Start

<强>校正:

根据Jake Rote的建议,在Global.asax的protected void Application_Start(Object sender, EventArgs e) { // Code goes here } 方法中设置默认的线程文化:

{{1}}