public partial class Register : System.Web.UI.Page
{
    string sqlconn = ConfigurationManager.ConnectionStrings["conn"].ConnectionString;    protected void Page_Load(object sender, EventArgs e)
    {    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        SqlConnection conn = new SqlConnection(sqlconn);
        string name = this.TextBox1.Text.Trim();
        string sqltext = "select * from loginuser where username='" + name + "'";
        SqlCommand comm = new SqlCommand(sqltext,conn);
        conn.Open();
        SqlDataReader datard = comm.ExecuteReader();
        if (datard.Read() == true)
        {
            datard.Close();
            this.textboxstate.Text = "注册失败:已有该用户名!";
            conn.Close();        }
        else
        {
            datard.Close();
            sqltext = "insert into loginuser(username,userpwd,sex,entertime)"
                + "values('"
                + name + "','"
                + this.TextBox2.Text.Trim() + "','"
                + this.RadioButtonList1.SelectedItem.Text + "','"
                + DateTime.Now.ToString() + "')";
            comm = new SqlCommand(sqltext,conn);
            comm.ExecuteNonQuery();
            conn.Close();
            Session["usrename"] = name;
            Response.Redirect("main.aspx");
        }    
}

解决方案 »

  1.   

    不知道字段"entertime"是什么类型,如果是日期时间,就得考虑DateTime.Now.ToString()的格式问题,记得一般是需要在字符串两端加上"#"字符,具体你查查吧
      

  2.   

    “/web”应用程序中的服务器错误。
    --------------------------------------------------------------------------------未将对象引用设置到对象的实例。 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。源错误: 
    行 34:         {
    行 35:             datard.Close();
    行 36:             sqltext = "insert into loginuser(username,userpwd,sex,entertime)"
    行 37:                 + "values('"
    行 38:                 + name + "','"
     源文件: f:\简易论坛\web\Register.aspx.cs    行: 36 堆栈跟踪: 
    [NullReferenceException: 未将对象引用设置到对象的实例。]
       Register.Button1_Click(Object sender, EventArgs e) in f:\简易论坛\web\Register.aspx.cs:36
       System.Web.UI.WebControls.Button.OnClick(EventArgs e) +111
       System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +110
       System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
       System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
       System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565 
    是这样的错
      

  3.   

    自己单步调试一下看看,是哪里出错,未将对象引用到对象的实例,是不是没new 对象
      

  4.   


    你aspx的相关代码也贴下看看比如RadioButtonList1的赋值操作
      

  5.   

    sqltext = "insert into loginuser(username,userpwd,sex,entertime)"
       + "values('"
       + name + "','"
       + this.TextBox2.Text.Trim() + "','"
       + this.RadioButtonList1.SelectedItem.Text + "','"
       + DateTime.Now.ToString() + "')";
     改成下面试试能不能通过:
    sqltext = "insert into loginuser(username,userpwd,sex,entertime)"
       + "values('"
       + name + "','"
       + this.TextBox2.Text.Trim() + "','"
       + this.RadioButtonList1.SelectedItem==null?"":this.RadioButtonList1.SelectedItem.Text+ "','"
       + DateTime.Now.ToString() + "')";
     
      

  6.   

    改了还是不能啊。未将对象引用设置到对象的实例。是什么原因啊。
    using System;
    using System.Collections.Generic;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Configuration;
    using System.Data.SqlClient;
    using System.Data;public partial class Register : System.Web.UI.Page
    {
        string sqlconn = ConfigurationManager.ConnectionStrings["conn"].ConnectionString;    protected void Page_Load(object sender, EventArgs e)
        {    }
        protected void Button1_Click(object sender, EventArgs e)
        {
            SqlConnection conn = new SqlConnection(sqlconn);
            string name = this.TextBox1.Text.Trim();
            string sqltext = "select * from loginuser where username='" + name + "'";
            SqlCommand comm = new SqlCommand(sqltext,conn);
            conn.Open();
            SqlDataReader datard = comm.ExecuteReader();
            if (datard.Read() == true)
            {
                datard.Close();
                this.textboxstate.Text = "注册失败:已有该用户名!";
                conn.Close();        }
            else
            {
                datard.Close();
                sqltext = "insert into loginuser(username,userpwd,sex,entertime)"
                    + "values('"
                    + name + "','"
                    + this.TextBox2.Text.Trim() + "','"
                    + this.RadioButtonList1.SelectedItem.Text + "','"
                    + DateTime.Now.ToString() + "')";
                comm = new SqlCommand(sqltext,conn);
                comm.ExecuteNonQuery();
                conn.Close();
                Session["usrename"] = name;
                Response.Redirect("main.aspx");
            }
        }
    }