我收到错误3,400.00 is not a valid value for Decimal.
SQL数据类型
decimal(18, 2)
代码
public ActionResult _UpdatePrograms(String trainings, int id){
JavaScriptSerializer jss = new JavaScriptSerializer();
string[] sep = new string[] { "|" };
String[] ec;
ec = trainings.Split(sep, StringSplitOptions.None);
Program training = jss.Deserialize<Program>((string)ec[0]); //-- In this I got an error like I said above
}
如何将值保存在用户输入的上方?如果删除逗号( , )
,则保存数据没有问题。
答案 0 :(得分:3)
尝试将“3,400.00”解析为十进制。
示例:
string testString = "3,400.00";
decimal x = decimal.Parse(testString);
答案 1 :(得分:3)
您可以使用CultureInfo.InvariantCulture
的分析,小数点使用点.
,分组使用逗号,
:
decimal dec = decimal.Parse("1,200,800.05", CultureInfo.InvariantCulture);
注意:传递CultureInfo
可确保Parse
将逗号和点一致处理为您在问题中使用的格式。顾名思义,它在具有不同文化背景的计算机上保持不变,例如:欧洲,逗号用作小数点。
答案 2 :(得分:1)