0

Visual Studio 2010を使い始めたばかりで、Webサイトを作成したいのですが、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;
        }
    }
}
4

1 に答える 1

0

ページロードでコードを再バインドしてみますが、if(!Page.IsPostBack)を使用します。これは、最初のロードでDBのフレッシュ状態をバインドし、更新後に変更を再バインドすることを意味します。したがって、Button_Clickのコードの最後でGridView1.DataBind()を使用する必要があります。これで問題が解決したことを承認してください。

于 2012-09-28T08:05:58.210 に答える