更新语句没有命中数据库?

时间:2012-09-27 19:47:22

标签: c# asp.net sql-server database visual-studio-2010

我刚刚开始使用我的Visual Studio 2010,想要创建一个网站,我有2个下拉列表和4个文本框,用户输入数据和数据库应该更新但是没有发生,网格视图只是显示我的初始数据库值。能帮我拿到想要的结果吗?

这是我的代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; 
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data.Sql;

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

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            SqlConnection myConn = new SqlConnection(
               "Data Source=HOME-AA3742A183;Initial Catalog=master;"
               + "Integrated Security=True");
            myConn.Open();
            SqlCommand up = new SqlCommand(
                @"UPDATE 
                      [resource1] 
                  SET
                      [date_entered] = @d, 
                      [pass] = @p, 
                      [fail] = @f, 
                      [blocked] = @b  
                  WHERE  ([rname] = @r)  
                      AND ([mname] = @m)", 
                myConn);

            up.Parameters.AddWithValue("@d", date.Text);
            up.Parameters.AddWithValue("@p", pass.Text);
            up.Parameters.AddWithValue("@f", fail.Text);
            up.Parameters.AddWithValue("@b", blocked.Text);
            up.Parameters.AddWithValue("@r", resource.SelectedValue);
            up.Parameters.AddWithValue("@m", module.SelectedValue);
            up.ExecuteNonQuery();
            myConn.Close();

           GridView1.Visible = true;
        }
    }
}

1 个答案:

答案 0 :(得分:0)

尝试重新绑定页面加载中的代码,但使用if(!Page.IsPostBack)这意味着您将在第一次加载时绑定数据库的Fresh状态,然后在更新后重新绑定更改。那么,你必须在Button_Click的代码末尾使用GridView1.DataBind()。请批准这已解决了您的问题。