我正在运行一个SQL查询的where子句每次发生按钮单击时发生更改。如何避免按钮单击后变量的实例化?
现在where子句由列表的索引组成。当点击按钮发生时,会发生导致索引值初始化的页面加载。
int i=0;
protected void Button1_Click(object sender, EventArgs e)
{
string str = lst1.ElementAt<string>(i++);
qr = "Select BdId,First_Name,Last_Name,Age,Gender,Relationship_status,Birthday from [User] where BdId='" + str + "'";
da2 = new SqlDataAdapter(qr, con);
da2.Fill(ds2);
Label1.Text = Label1.Text + " " + i.ToString();
}
我该如何避免这种情况发生?我希望索引值是全局的,这样每次点击按钮时都不会再次实例化。
感谢
除了其他任何东西,你应该参数化你的SQL,以避免SQL注入攻击...... – 2012-02-06 11:43:34
使用'ViewState' – Hadas 2012-02-06 11:45:04
一个非局部变量,称为'我'。不寒而栗。 – CodesInChaos 2012-02-06 11:47:26