【发布时间】:2013-11-15 14:07:21
【问题描述】:
在我的代码中插入非常必要的行之后-
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
try {
GridViewRow row = GridView1.SelectedRow;
AccountNumber.Text = (string)row.Cells[0].Text;
.....
if (DropDownListCurrency.Items.FindByValue(row.Cells[7].Text.ToString().Trim()) != null)
{
DropDownListCurrency.SelectedValue = row.Cells[7].Text.ToString().Trim();
}
}
catch (Exception ex)
{
Console.WriteLine("{0} Exception caught.", ex);
}
}
没有抛出任何错误,所有字段都按应有的方式填充到相应的下拉框和文本框中。但是我的保存和插入语句不再起作用。帮忙!
protected void AgentSave_Click(object sender, EventArgs e)
{
try
{
SqlConnection con = new SqlConnection("XX");
SqlCommand command = con.CreateCommand();
command.CommandText =
"Insert into ABC values('" + AccountNumber.Text + "','" + Name.Text + "','" + Address1.Text + "','" + Address2.Text + "', '" + Address3.Text + "','" + PhoneNumber.Text + "','" + FaxNumber.Text + "','" + DropDownListCurrency.Text + "')";
con.Open();
command.ExecuteNonQuery();
con.Close();
Response.Redirect("main.aspx");
}
catch (Exception ex)
{
Console.WriteLine("{0} Exception caught.", ex);
}
}
【问题讨论】:
-
一定要参数化你的sql查询以避免sql注入攻击:en.wikipedia.org/wiki/SQL_injection
-
他们是。在我插入此语句之前它们工作正常,但现在它们不是......
-
请使用参数化sql查询,避免sql注入攻击。请分享您的完整代码。
-
能否请您在
XXX中填写一些更具体的代码?您是否指定了列名? -
@New2This - 您没有处理您的
SqlConnection对象。将其包装在 using 语句中。这可能就是您遇到问题的原因。
标签: c# asp.net sql visual-studio-2010