c# - 将数据存储到SQL Server数据库并动态生成html div并显示sql数据库内容c#
问题描述
此按钮会将我在文本框中输入的内容存储到我的 SQL Server 数据库中:
string aOption = Request.Form["option"].ToString();
string ATitle = Request.Form["title"].ToString();
string Adesc = Request.Form["desc"].ToString();
con = new SqlConnection(constr);
con.Open();
cmd = new SqlCommand("INSERT INTO Thread (shareORask, Thread_Title, Thread_Description) VALUES (@shareORask, @Thread_Title, @Thread_Description)", con);
cmd.Parameters.AddWithValue("@shareORask", askORshare_Selected);
cmd.Parameters.AddWithValue("@Thread_Title", AS_Title);
cmd.Parameters.AddWithValue("@Thread_Description", AS_desc);
cmd.ExecuteNonQuery();
con.Close();
接下来,我想动态生成 div 并显示数据库内容。我在页面加载中做到了。
protected void Page_Load(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(constr);
con.Open();
SqlCommand cmd = new SqlCommand("Select * from Thread", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
reptater.DataSource = ds;
reptater.DataBind();
con.Close();
}
<asp:Repeater runat="server" ID="reptater">
<ItemTemplate>
<div><%#Eval("Thread_Description") %></div>
</ItemTemplate>
它可以工作,但是当我将输入提交到文本框中时。我无法获取动态创建的数据。它仅在我刷新页面时有效。
但是,重复的数据会添加到我的 SQL Server 数据库中,我该如何解决这个问题?
解决方案
我假设按钮代码在一个名为MyButton_Click(object sender, EventArgs e)
.
按钮单击事件是“控制事件”,这些事件发生在页面生命周期中的 Page_Load 事件之后。要在单击事件期间插入数据库并在一个页面周期中呈现 div,您需要在稍后的事件之一中呈现 div,可能是 Page_PreRender 事件。
推荐阅读
- sql - Bigquery - 如何根据聚合列选择前 50 个元素,分组为 3 列
- python - 为什么 Django rest 框架是 restful?
- android - 在android中的类内的对话框片段的线性布局中添加textview
- docker - 无法运行 mopidy docker
- python - 为什么我不能使用 cartopy 绘制同一数据集的某些时间平均值?
- python - 在 Python 中为类提供可选函数的最佳实践
- email - 退回、阅读和送达回执以及电子邮件标题
- php - Laravel Service Provider - 从方法链中的中间方法获取类实例
- python - 如何在python中让程序每天在特定时间提醒我?
- deep-learning - 如何在 VAE 中选择潜在变量先验的正确分布?