ASP.NET 2.0 C# 插入到数据库不起作用

本文关键字:数据库 不起作用 插入 NET ASP | 更新日期: 2023-09-27 18:33:51

我的 Web 应用程序中有一个 asp.net 向导控件,我正在从代码隐藏调用存储过程以将数据插入数据库。在 SSMS 中执行过程工作正常,我之前已经让这个块工作过一次并进行了更改(不幸的是我不记得我做了哪些更改)。我的问题是,当单击下一个按钮时,不会抛出任何错误,也不会将数据写入数据库。我已经通过将异常添加到 cnx2 try 块中进行了测试,并且抛出了异常,因此我知道代码正在执行到我想要的位置,但它仍然没有插入。任何帮助不胜感激,谢谢。如果我能添加任何可能有助于让我知道的信息,请

     protected void onNextButtonClick(object sender, EventArgs e)
    {
        if (Wizard1.ActiveStepIndex.Equals(1))
        {
            page1Submit();
        }
        else if (Wizard1.ActiveStepIndex.Equals(2))
        {
            page2Submit();
        }
        else if (Wizard1.ActiveStepIndex.Equals(3))
        {
            page3Submit();
        }
        else if (Wizard1.ActiveStepIndex.Equals(8))
        {
            page8submit();
        }
    }
    protected void page1Submit()
    {
        string hispanic;
        if (cbIsHispanic.Checked)
        {
            hispanic = "1";
        }
        else
        {
            hispanic = "0";
        }
        bool newReport = true;
        SqlConnection cnx = new SqlConnection(server);
        SqlCommand cmd = new SqlCommand("[ReportCheckExists]", cnx);
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.AddWithValue("@reportNumber", dReportNumber.Text.ToString());
        try
        {
            cnx.Open();
            int rowCount = Convert.ToInt32(cmd.ExecuteScalar());
            cnx.Close();
            if (rowCount > 0)
            {
                newReport = false;
            }
        }
        catch (Exception ex)
        {
            throw new Exception("Error executing MyProcedureName.", ex);
        }
        if (newReport)
        {
            SqlConnection cnx2 = new SqlConnection(server);
            SqlCommand cmd2 = new SqlCommand("[NewReport]", cnx2);
            cmd2.CommandType = CommandType.StoredProcedure;
            cmd2.Parameters.AddWithValue("@reportNumber", dReportNumber.Text.ToString());
            try
            {
                cnx.Open();
                cmd.ExecuteNonQuery();
                cnx.Close();
            }
            catch (Exception ex)
            {
                throw new Exception("Error executing MyProcedureName.", ex);
            }  
        }
        else
        {
            string strJavaScript = "<script language = javascript type=text/Javascript> alert('That report number already exists. If you need to modify a report select it from the main menu or enter the report number again.')</script>";
            this.Page.RegisterClientScriptBlock("Key4", strJavaScript);
            Wizard1.ActiveStepIndex = 0;
        }
    }

ASP.NET 2.0 C# 插入到数据库不起作用

这可能是因为您正在执行 cmd 命令,而不是在第二次尝试捕获块中cmd2