0
我有這個頁面,用戶可以在其中修改它的信息。加載頁面時,會將用戶信息填充到文本輸入字段中。然後您可以更改您的信息並點擊保存。數據應該保存到數據庫中,並且由於刷新,這些數據也應該反映在文本字段中。但它不保存數據。如果我刪除了數據的讀數,點擊按鈕時會保存數據,但是當數據讀數存在時,數據不會被保存。保存到數據庫,然後從數據庫讀取數據不存在
這是在「讀出的數據」部分中的代碼,這是在Page_Load():
string loggedInUser = System.Web.HttpContext.Current.User.Identity.Name;
SqlConnection ConnectDb = new SqlConnection("Data Source=serverHere;Initial Catalog=catalogHere;User ID=userNameHere;Password=passwordHere;"); //Opretter database connection string
SqlDataReader infoReader = null;
SqlCommand getUserInfo = new SqlCommand("SELECT firstName,lastName,age,city,contact,bio FROM UserInfo WHERE userName = @userName", ConnectDb);
getUserInfo.Parameters.Add("@userName", loggedInUser);
ConnectDb.Open();
infoReader = getUserInfo.ExecuteReader();
infoReader.Read();
{
tbInfoFirstName.Text = infoReader["firstName"].ToString();
tbInfoLastname.Text = infoReader["lastName"].ToString();
tbInfoAge.Text = infoReader["age"].ToString();
tbInfoCity.Text = infoReader["city"].ToString();
tbInfoKontakt.Text = infoReader["contact"].ToString();
tbInfoAbout.Text = infoReader["bio"].ToString();
};
ConnectDb.Close();
這是爲保存按鈕的代碼:
string loggedInUser = System.Web.HttpContext.Current.User.Identity.Name;
SqlConnection ConnectDb = new SqlConnection("Data Source=serverHere;Initial Catalog=catalogHere;User ID=userNameHere;Password=passwordHere;");
SqlCommand SavePersonInfo = new SqlCommand("UPDATE UserInfo SET firstName = @firstName,lastName = @lastName,age = @age,city = @city,contact = @contact,bio = @bio WHERE userName = @userName", ConnectDb);
SavePersonInfo.Parameters.AddWithValue("@firstName", tbInfoFirstName.Text);
SavePersonInfo.Parameters.AddWithValue("@lastName", tbInfoLastname.Text);
SavePersonInfo.Parameters.AddWithValue("@age", tbInfoAge.Text);
SavePersonInfo.Parameters.AddWithValue("@city", tbInfoCity.Text);
SavePersonInfo.Parameters.AddWithValue("@contact", tbInfoKontakt.Text);
SavePersonInfo.Parameters.AddWithValue("@bio", tbInfoAbout.Text);
SavePersonInfo.Parameters.AddWithValue("@userName", loggedInUser);
ConnectDb.Open();
SavePersonInfo.ExecuteNonQuery();
//Response.Redirect("Manage.aspx");
ConnectDb.Close();
如所述,保存代碼在它自己的代碼上工作,但是當閱讀代碼也處於活動狀態時,例如:未被註釋掉。
請調試哪一部分(選擇或插入)未能通過尋找到了一個工具數據庫。 –
'Page_Load'在Webforms中的按鈕事件處理程序之前觸發。 – Jamiec
是的,它會在頁面加載時讀取數據。但是,它不應該只做一次嗎? –