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

C#中" 并非所有的代码路径都返回值"请问这是什么错误啊? 急求,请大虾帮不弟看看
我写一个注册用户的页面,公共类中定义
public   int   Adduser(string   UserName,   string   Password,   string   Address,   string   Phone,   string   Mobile,   string   Email,   int   RoleID,   string   Birth,   string   userJygm,   string   msgCompany,   string   msgWenHua)
                {  
                        ///定义类SQLHelper
                        SQLHelper   sqlHelper   =   new   SQLHelper();

                        ///创建访问数据库的参数
                        SqlParameter[]   paramList   =  
                                {
                                        sqlHelper.CreateInParam( "@UserName ",SqlDbType.NVarChar,50,UserName),
                                        sqlHelper.CreateInParam( "@Password ",SqlDbType.NVarChar,50,Password),
                                        …………
                                };
                        try
                        {
                                //执行存储过程
                                return   (sqlHelper.RunProc( "Pr_AddUser ",   paramList));
                        }
                        catch   (Exception   ex)
                        {
                                ///抛出执行数据库异常
                                SQLHelper.CreateErrorMsg(ex.Message);
                                throw   new   Exception(ex.Message,ex);
                        }
前面paramList中的UserNam、Password……都可以得到注册时的变量,执行时总是提示:
对象名“tb_message "无效??
这是什么原因呢?   执行过后数据可以插入数据表中的

------解决方案--------------------
" 并非所有的代码路径都返回值 "---在catch后面加上return null;应该就可以了
对象名 "tb_message "无效---以上代码没出现过,好好找找吧
------解决方案--------------------
存储过程里tb_message,你没给他传值进去。
“并非所有的代码路径都返回值”是说,方法定义