【问题标题】:Object reference not set to an instance of an object while adding to database添加到数据库时未将对象引用设置为对象的实例
【发布时间】:2014-08-22 06:46:04
【问题描述】:
protected void Button1_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection("Data Source=PIYUSH-PC\\SQLEXPRESS;Initial Catalog=piyush;Integrated Security=True");
    SqlCommand cmd = new SqlCommand("SPRegisterUser", con);

    cmd.CommandType = CommandType.StoredProcedure;

    SqlParameter username = new SqlParameter("@Username_V", TextBox1.Text);
    SqlParameter email = new SqlParameter("@Email_V", TextBox2.Text);
    SqlParameter password = new SqlParameter("Password_V", TextBox3.Text);

    cmd.Parameters.Add(username);
    cmd.Parameters.Add(password);
    cmd.Parameters.Add(email);
    try
    {
        con.Open();
        int ReturnCode = (int)cmd.ExecuteScalar();
        if (ReturnCode == -1)
        {
            Response.Write("Username already exists");
        }
        else
        {
            Response.Redirect("WebForm2.aspx");
        }
    }
    catch (Exception e1)
    {
        Response.Write(e1);
    }
    finally
    {
        con.Close();
    }
}

上面的代码运行但显示以下 - System.NullReferenceException:对象引用未设置为对象的实例。在 eGaffar_23_6_2014_.WebForm1.Button1_Click(Object sender, EventArgs e)

【问题讨论】:

  • 这绝对不是经典的 ASP,它是 ASP.Net。经典 ASP 是用 VBScript 或 JavaScript 编写的,不会有按钮点击等事件。
  • 您的文本框的名称可能与上述不同。尝试在调试模式下运行它,按 F5 或单击 Visual Studio 或 Visual Web Developer 工具栏上的播放图标。

标签: c# asp.net webforms


【解决方案1】:

您的第三个参数必须是 @Password_V 因为在传递值参数时您还需要添加 @

【讨论】:

    猜你喜欢
    • 2018-12-10
    • 1970-01-01
    • 1970-01-01
    • 2014-02-19
    • 1970-01-01
    • 2019-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多