方法:   public int GetIDInsert(string SqlString) //根据Sql语句,插入记录并返回生成的编号
        {
            int Count = -1;
            Open();
            SqlCommand cmd = new SqlCommand(SqlString, Connection);
            Count = int.Parse(cmd.ExecuteScalar().ToString().Trim());
            Close();
            return Count;
        }调用的代码:string insertPaper = "insert into Paper(userId,courseId,paperName,paperState,needTime) values('"+Session["userId"] +"','"+ int.Parse(ddlCourse.SelectedValue) + "','" + txtPaperName.Text + "',1" + ",'" + int.Parse(txtNeedTime.Text) + "')";
        afterId = GetIDInsert(insertPaper); //保存试卷,并返回自动生成的试卷编号结果出现错误:未将对象引用设置到对象的实例

解决方案 »

  1.   

     Session["userId"] 看看它 是不是为null了
      

  2.   

    有空值了,如果说是debug版,call statck应该会告诉你哪行出得问题。
    在那行上设置断点,运行到断点后,查看变量,看看哪个是null.
      

  3.   

    看session吧
    断点
    而且楼主 最好把 一些接收用户信息的地方不要直接拼接成字符串 很危险
    用个变量什么的接收写 看看谁null或者空了
    这种问题一般 是没实例化 或者是null了你还使用了某个方法导致的
      

  4.   

    楼主调式吧 看看session是不是为Null