0

我正在尝试将表单中的填写信息提交到数据库。我已经为保存按钮完成了下面提到的编码。当我单击保存按钮保存信息时,我收到错误消息。我需要完成它,同样需要这里的极客提供帮助。

数据库中保存按钮数据的代码

public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {

        string conn = ConfigurationManager
                       .ConnectionString("welcome").ConnectionString;
        SqlConnection con=new SqlConnection(conn);
        SqlCommand cmd = new SqlCommand("Insert into abhishek(pr_name,Add,add2) values(@ah,@Ap,@qe)",con);

        cmd.CommandType = CommandType.Text;

        cmd.Parameter.Addwithvalue("@ah", TextBox1.Text.Trim());
        cmd.Parameter.Addwithvalue("@ap", TextBox2.Text.Trim());
        cmd.Parameter.Addwithvalue("@qe", TextBox3.Text.Trim());
        con.Open();
        cmd.ExecuteNonQuery();
        con.Close();
    }
}

检查下图中的错误:

在此处输入图像描述

4

1 回答 1

0

您在ConnectionStrings索引属性中缺少一个“s”。但是,一旦您修复了该错误,您还会发现该SqlCommand.Parameters属性中缺少更多“s”。

要揭示这些问题,请打开代码隐藏文件的属性,然后选择编译的构建操作。(另外,我可以从您的图片中看到,您的项目看起来像是设置为网站而不是 Web 应用程序;如果可能,请考虑将其转换为 Web 应用程序,因为它提供了许多好处。)

纠正语法后,您应该更改代码,以便通过按钮单击处理程序调用更新,而不是在页面加载时调用。

在您的 aspx 标记代码中:

<asp:Button runat="server" ID="btnSave" Text="Save" OnClick="btnSave_Click" />

在您的代码隐藏中:

protected void btnSave_Click(object sender, EventArgs e)
{
    string conn = ConfigurationManager.ConnectionStrings["welcome"].ConnectionString;
    using (SqlConnection con = new SqlConnection(conn))
    {
        SqlCommand cmd = new SqlCommand("Insert into abhishek(pr_name,Add,add2) values(@ah,@Ap,@qe)", con);

        cmd.CommandType = CommandType.Text;

        cmd.Parameters.AddWithValue("@ah", TextBox1.Text.Trim());
        cmd.Parameters.AddWithValue("@ap", TextBox2.Text.Trim());
        cmd.Parameters.AddWithValue("@qe", TextBox3.Text.Trim());
        con.Open();
        cmd.ExecuteNonQuery();
    }
}

请注意,我已将代码移到按钮单击事件处理程序中,并移出Page_Load。Load 事件处理程序应仅用于页面执行路径上无条件需要的初始化项(即,无论在页面上单击了任何按钮),并且应该类似于以下内容:

protected void Page_Load(object sender, EventArgs e)
{
    // Code to run every time the page is created, both initially and on postback

    if (IsPostBack)
    {
        // Code to run every time the page is posted back (any submit event)
    }
    else
    {
        // Code to run on the initial creation of the page
    }
}
于 2012-05-10T13:05:05.673 回答