日期:2014-05-19  浏览次数:20736 次

存储过程参数:发送0的时候为何无效?
if   (cbox_finsh.Text   ==   "完成 ")  
        editcmd.Parameters.Add( "@Finished ",   1);
else  
        editcmd.Parameters.Add( "@Finished ",   0);

请问,当不等于 "完成的时候 ".为何提示我没有发送@Finished存储参数呢?(相当于发送参数0的时候无效)

------解决方案--------------------
数据库里@Finished什么类型,bit?int?
------解决方案--------------------
强烈建议把出错信息post出来!

觉得不应该是数据类型的错误!

约束??
------解决方案--------------------
还是贴贴附近的代码吧
------解决方案--------------------
if (cbox_finsh.Text == "完成 ") editcmd.Parameters.Add( "@Finished ", 1);
if (cbox_finsh.Text == "未完成 ") editcmd.Parameters.Add( "@Finished ", 0);
========================================================
如果即不是 "完成 "也不是 "未完成 "呢?由于空格等等因素的影响,你的代码这样比较好

if (cbox_finsh.Text == "完成 ")
editcmd.Parameters.Add( "@Finished ", 1);
else
editcmd.Parameters.Add( "@Finished ", 0);

------解决方案--------------------
//if (cbox_edit_tx.Checked) editcmd.Parameters.Add( "@NeedNotify ", 1);
//if (!cbox_edit_tx.Checked) editcmd.Parameters.Add( "@NeedNotify ", 0);
editcmd.Parameters.Add( "@NeedNotify ", (cbox_edit_tx.Checked ? 1 : 0) );


//if (cbox_finsh.Text == "完成 ") editcmd.Parameters.Add( "@Finished ", 1);
//if (cbox_finsh.Text == "未完成 ") editcmd.Parameters.Add( "@Finished ", 0);
editcmd.Parameters.Add( "@Finished ", (cbox_finsh.Text.Trim() == "完成 " ? 1 : 0) );