Я работаю над одним проектом для университета, и я хочу сказать, что я довольно новичок в asp.net
.Запрос на обновление ASP.NET C# не работает
Ниже приведен код, с которым у меня возникают проблемы. Проблема в том, что функция обновления не работает. В загрузке страницы у меня есть несколько запросов выбора, и я загружаю данные из базы данных в некоторые текстовые поля и текстовые поля. Это работает нормально - он загружает данные образца, которые я добавил вручную в моей базе данных.
У меня есть кнопки, которые должны обновлять базу данных при нажатии.
Это код кнопки:
<a id="A1" class="button" onserverclick="box1_Click" runat="server">
<span>Запази полето <img src="notification-tick.gif" width="12" height="12" /></span>
</a>
Это код позади:
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class admin_Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//Loading the data from the database
string DatabaseConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["proekt"].ConnectionString;
string sql1_title = "SELECT title FROM home WHERE id=1";
string sql1_image = "SELECT image FROM home WHERE id=1";
string sql1_text = "SELECT text FROM home WHERE id=1";
string sql2_title = "SELECT title FROM home WHERE id=2";
string sql2_image = "SELECT image FROM home WHERE id=2";
string sql2_text = "SELECT text FROM home WHERE id=2";
string sql3_title = "SELECT title FROM home WHERE id=3";
string sql3_image = "SELECT image FROM home WHERE id=3";
string sql3_text = "SELECT text FROM home WHERE id=3";
using (SqlConnection conn = new SqlConnection(DatabaseConnectionString))
{
//box1 data load
SqlCommand cmd1_title = new SqlCommand(sql1_title, conn);
conn.Open();
box1_title.Text = (string)cmd1_title.ExecuteScalar();
conn.Close();
SqlCommand cmd1_image = new SqlCommand(sql1_image, conn);
conn.Open();
box1_img.Text = (string)cmd1_image.ExecuteScalar();
conn.Close();
SqlCommand cmd1_text = new SqlCommand(sql1_text, conn);
conn.Open();
box1_text.InnerText = (string)cmd1_text.ExecuteScalar();
conn.Close();
//box2 data load
SqlCommand cmd2_title = new SqlCommand(sql2_title, conn);
conn.Open();
box2_title.Text = (string)cmd2_title.ExecuteScalar();
conn.Close();
SqlCommand cmd2_image = new SqlCommand(sql2_image, conn);
conn.Open();
box2_img.Text = (string)cmd2_image.ExecuteScalar();
conn.Close();
SqlCommand cmd2_text = new SqlCommand(sql2_text, conn);
conn.Open();
box2_text.InnerText = (string)cmd2_text.ExecuteScalar();
conn.Close();
//box3 data load
SqlCommand cmd3_title = new SqlCommand(sql3_title, conn);
conn.Open();
box3_title.Text = (string)cmd3_title.ExecuteScalar();
conn.Close();
SqlCommand cmd3_image = new SqlCommand(sql3_image, conn);
conn.Open();
box3_img.Text = (string)cmd3_image.ExecuteScalar();
conn.Close();
SqlCommand cmd3_text = new SqlCommand(sql3_text, conn);
conn.Open();
box3_text.InnerText = (string)cmd3_text.ExecuteScalar();
conn.Close();
}
}
protected void box1_Click(object sender, EventArgs e)
{
string DatabaseConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["proekt"].ConnectionString;
string sql1 = "UPDATE home SET [email protected], [email protected], [email protected] WHERE Id=1";
using (SqlConnection conn = new SqlConnection(DatabaseConnectionString))
{
SqlCommand cmd2 = new SqlCommand(sql1, conn);
cmd2.Parameters.AddWithValue("@title", box1_title.Text);
cmd2.Parameters.AddWithValue("@image", box1_img.Text);
cmd2.Parameters.AddWithValue("@text", box1_text.InnerText);
conn.Open();
cmd2.ExecuteNonQuery();
conn.Close();
}
}
protected void box2_Click(object sender, EventArgs e)
{
}
protected void box3_Click(object sender, EventArgs e)
{
}
}
Когда я внести изменения в название box1, а затем нажмите кнопку, чтобы обновить база данных фактически обновляет страницу и снова загружает образцы данных, и мои изменения не сохраняются.
Не могли бы вы помочь мне с этим ?. Ошибок нет.
Спасибо, ребята, очень.
PS: Я заметил, что когда я загружаю страницу в свой браузер, а затем удаляю весь блок кода для загрузки данных, внесите изменения в браузер в одном из полей, а затем нажмите кнопку, которая фактически обновляет базы данных. Это очень странно ...
Избегайте ** 9 ** поездок на дБ; 'SELECT id, title, image, text FROM home WHERE id in (1,2,3) order by id' и фильтр на клиенте –
По предложению откройте соединение один раз и выполните все ваши запросы сразу, прежде чем закрыть его , – StuartLC