日期:2014-05-18  浏览次数:20487 次

将参数值从 String 转换到 Int32 失败??
com.Parameters.Add( "@ssd_w ",   SqlDbType.SmallInt).Value   =   TextBox10.Text.Trim();
com.Parameters.Add( "@ssd_l ",   SqlDbType.SmallInt).Value   =   TextBox11.Text.Trim();
当TEXTBOX控件为空是,就会有 "
将参数值从   String   转换到   Int32   失败 "
请问应该怎样解决这问题

------解决方案--------------------
com.Parameters.Add( "@ssd_l ", SqlDbType.SmallInt).Value = string.IsNullOrEmpty(TextBox11.Text)?0:(int)TextBox11.Text;
------解决方案--------------------
com.Parameters.Add( "@ssd_w ", SqlDbType.SmallInt).Value = Convert.ToInt32(TextBox10.Text.Trim());
com.Parameters.Add( "@ssd_l ", SqlDbType.SmallInt).Value = Convert.ToInt32(TextBox11.Text.Trim());

------解决方案--------------------

com.Parameters.Add( "@ssd_l ", SqlDbType.SmallInt).Value = string.IsNullOrEmpty(TextBox11.Text)?0:(int)TextBox11.Text;

//先判断是否为空再判断是否是数值
com.Parameters.Add( "@ssd_l ", SqlDbType.SmallInt).Value=(TextBox11.Text!=null&&TextBox11.Text!= " ")?(PublickClass.IsNumeric(TextBox11.Text)==true?Convert.ToInt32(TextBox11.Text):0):0
------解决方案--------------------
com.Parameters.Add( "@ssd_w ", SqlDbType.SmallInt).Value = TextBox10.Text.Trim()== " "?0:Convert.ToInt32(TextBox10.Text.Trim());
com.Parameters.Add( "@ssd_l ", SqlDbType.SmallInt).Value = TextBox11.Text.Trim()== " "?0:Convert.ToInt32(TextBox11.Text.Trim());