当用户在动态创建的行中选择名称并单击按钮保存时,我尝试从gridview插入记录。但有时记录可以保存,大多数时候不是。我的编程逻辑是否有问题?希望有帮助。谢谢。
前端代码
<td>
<asp:Button ID="btnSave" runat="server" Text="Save" CssClass="btn btn-primary" Style="margin-top: 5px; margin-left: 150px" OnClick="btnSave_Click" /></td>
后端代码
protected void btnSave_Click(object sender, EventArgs e)
{
grid2.SaveSelectionToViewState();
string Branch = txtBranch.Text.Trim();
string Name = txtName.Text.Trim();
string sql = "";
string Slmn = "";
DBHandler dbh = new DBHandler();
string active;
if (checkbox_id.Checked)
{
active = "1";
}
else
{
active = "0";
}
try
{
if (Branch != "" && Name != "")
{
dbh.OpenConnection();
for (int i = 0; i < grid2.Rows.Count; i++)
{
Slmn = ((TextBox)grid2.Rows[i].Cells[1].FindControl("TextBox1")).Text.Trim();
sql = "Insert into fcs_cotmdl (crdt,crid,cono,tmdl,slmn,acti) values (sysdate,'SYSTEM','" + Branch + "','";
sql += Name + "','" + Slmn + "','" + active + "')";
dbh.ExecuteNonQuery(sql);
dbh.TransactionCommit();
Page.ClientScript.RegisterStartupScript(this.GetType(), "Scripts", "<script>alert('Saved');</script>");
}
}
else
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "Scripts", "<script>alert('Please fill in the Branch Code or Team Leader Name');</script>");
}
}
catch (Exception exp)
{
dbh.TransactionRollBack();
}
finally
{
dbh.CloseConnection();
}
checkbox_id.Checked = false;
txtBranch.Text = "";
txtName.Text = "";
grid2.DataBind();
SetInitialRow();
}