字符串到十进制显示总是两位小数

Jua*_*ero 0 c# string decimal

我有这个字符串"121,121.00",我需要转换为小数,以给前端这个'121121.00'.我已经尝试了很多,但我还不能做到.这里有一些我试过的代码和他们给我的结果:

string var = "121,121.00"

decimal d = decimal.Parse(var, NumberStyles.AllowThousands | NumberStyles.AllowDecimalPoint);
// it gives me '12112100'  

decimal d = decimal.Parse(var, NumberStyles.Currency);
// it gives me '12112100' 

decimal d = decimal.Parse((var.Replace(",","")), NumberStyles.Currency);
// and it gives me '12112100' too
Run Code Online (Sandbox Code Playgroud)

Tim*_*ter 6

十进制只有一个值,你将它与一个字符串混淆,该字符串可以以所需的格式显示数字.你可以用d.ToString("0.00)"CultureInfo.InvariantCulture:

string var = "121,121.00";
decimal number = decimal.Parse(var, CultureInfo.InvariantCulture);
string result = number.ToString("0.00", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)