l = Convert.ToInt32(a3) * Convert.ToInt32(aa5);
string a8 = l.ToString();
DataSet ds1 = xm.getDataSet("INSERT INTO [user_shop] (user_name,user_shop,user_sl,user_rmb,user_shopname,user_n) VALUES ('" + name + "','" + a2 + "','" + aa5.Replace("'", "''") + "','" + a8 + "','" + a4 + "','" + aa6.Replace("'", "''") + "')");
s.rScript(this.GetType(), "<script>alert('成功添加进购物车!!!');</script>", this.Page);
return;
出现错误
输入字符串的格式不正确。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.FormatException: 输入字符串的格式不正确。
源错误:
行 150:
行 151: int l;
行 152: l = Convert.ToInt32(a3) * Convert.ToInt32(aa5);????出错
行 153:
行 154: string a8 = l.ToString();
8 个解决方案
#1
a3 和aa5 可能是字符 可能是null 这么做之前 先判断一下在转换
你可以先输出一下
你可以先输出一下
#2
你先断点调试一下,看看传入的值是不是正确的int格式
#3
把你的insert打印出来,放到sqlserver中执行一下
#4
l = Convert.ToInt32(a3) * Convert.ToInt32(aa5);
这两个变量的一个或者两个不能转换为整数。
这两个变量的一个或者两个不能转换为整数。
#5
用int.trypase 不行吗。
int i;
bool flag= int.trypase(a3,out i);
if(flag)
//to do
#6
类型转换错误很正常的,看下a3,aa5的值就知道了,非数子必然要错误的;
tryparse可以的,要严格验证输入就行了;
1、只要是提交来的数据,必须经过严格的验证才能放心的;
2、这样的拼接sql字符串很可怕的,还是用参数化的吧;
tryparse可以的,要严格验证输入就行了;
1、只要是提交来的数据,必须经过严格的验证才能放心的;
2、这样的拼接sql字符串很可怕的,还是用参数化的吧;
#7
这问题,你自己调试,不是更快?
#8
异常详细信息: System.FormatException:
输入字符串的格式不正确。
用int.TryParse()方法,不要用Convert.ToInt32()转换。
用int.TryParse()方法,不要用Convert.ToInt32()转换。
#1
a3 和aa5 可能是字符 可能是null 这么做之前 先判断一下在转换
你可以先输出一下
你可以先输出一下
#2
你先断点调试一下,看看传入的值是不是正确的int格式
#3
把你的insert打印出来,放到sqlserver中执行一下
#4
l = Convert.ToInt32(a3) * Convert.ToInt32(aa5);
这两个变量的一个或者两个不能转换为整数。
这两个变量的一个或者两个不能转换为整数。
#5
用int.trypase 不行吗。
int i;
bool flag= int.trypase(a3,out i);
if(flag)
//to do
#6
类型转换错误很正常的,看下a3,aa5的值就知道了,非数子必然要错误的;
tryparse可以的,要严格验证输入就行了;
1、只要是提交来的数据,必须经过严格的验证才能放心的;
2、这样的拼接sql字符串很可怕的,还是用参数化的吧;
tryparse可以的,要严格验证输入就行了;
1、只要是提交来的数据,必须经过严格的验证才能放心的;
2、这样的拼接sql字符串很可怕的,还是用参数化的吧;
#7
这问题,你自己调试,不是更快?
#8
异常详细信息: System.FormatException:
输入字符串的格式不正确。
用int.TryParse()方法,不要用Convert.ToInt32()转换。
用int.TryParse()方法,不要用Convert.ToInt32()转换。