用生成器得到的代码?这句是多此一举的判断吗??
C# code
StringBuilder strSql=new StringBuilder("插入语句");
object obj = DbHelperSQL.GetSingle(strSql.ToString(),parameters);//返回添加进去的索引ID
if (obj == null)
{
return 1;
}
else
{
return Convert.ToInt32(obj);
}
obj == null这句,obj怎么会=null呢,成功插入肯定会返回一个ID值的,如果没成功插入,代码就会报错了,还要判断吗?
------解决方案--------------------在严谨性上来说还是需要判断的,因为毕竟不知道你GetSingle的方法是什么样的,如果在这个方法里捕获了异常,并且当异常时返回null,那时候如果你直接转换就出错了
------解决方案--------------------这个方法并不一定用来返回一个ID值的吧
应该是返回Rows[0][0]的值,那么这个判断是必要的。
------解决方案--------------------楼主方法不怎么好,应该参考其他方法
StringBuilder strSql=new StringBuilder("插入语句");
int n = ObjCom.ExecuteNonQuery();
if (n > 0)
{
res = true;
}
else
{
res = false;
}
------解决方案--------------------如果在方法DbHelperSQL.GetSingle中没有捕获异常,那么执行出错的时候就会直接报错了。
另外 obj==null是有必要的。就同1楼所说的那样。
------解决方案--------------------肯定有必要的啊,如果没有捕捉就直接报错,现在的话你可以对它进行一些友好性提示
------解决方案--------------------插入出错==(obj==null)?
插入出错了,程序就中断了啊.还判断什么,虽然我都写上obj==null