c# – decimal.TryParse返回false

例如,文本框中的输入字符串为10.00美元.我打电话

decimal result;
var a = decimal.TryParse(text, NumberStyles.AllowCurrencySymbol, cultureInfo, out result);

cultureInfo是已知的(en-US).为什么decimal.tryParse返回false?

谢谢.

最佳答案
问题是你已经允许货币符号本身,但是你已经省略了正确解析它所需的其他属性(例如小数点).你真正想要的是NumberStyles.Currency:

decimal.TryParse("$10.00", NumberStyles.Currency, cultureInfo, out result);

转载注明原文:c# – decimal.TryParse返回false - 代码日志