repeater里面的textbox的值修改后为什么数据库的值变的是最后一个?
代码:
protected void btnRework_Click(object sender, EventArgs e)
{
TextBox txtNewOrders;
string strOrders;
string[] strimgNum=Request.Form["Select"].Split(',');
foreach (RepeaterItem item in rptUploadFlash.Items)
{
for (int i = 0; i < strimgNum.Length; i++)
{
txtNewOrders = (TextBox)item.FindControl("txtOrders");
strOrders = txtNewOrders.Text;
if (strimgNum[i] != null)
{
Entity.BuildingBookFlash flash = new Entity.BuildingBookFlash();
flash.Img = strimgNum[i];
upl.reworkFlash(strOrders,Convert.ToString(flash.Img));
}
}
}
}
~~~~~~~~~~~
textbox的值能取得,如果盖得不是最后一个textbox值,数据库就没变化。如果该的是最后一个,那最后一个的值就相应改变了。这是什么原因啊。
upl.reworkFlash(strOrders,Convert.ToString(flash.Img))的代码:
public void reworkFlash(string strOreders,string strImg)
{
string sqlString;
string connString = Framework.GlobalModule.MainConnectionString;
SqlConnection conn = new SqlConnection(connString);
conn.Open();
sqlString = "update buildingbookflash set orders ='"+strOreders+"' from buildingbookflash where img='"+strImg+"' ";
SqlCommand comm = new SqlCommand(sqlString, conn);
comm.ExecuteNonQuery();
conn.Close();
}
~~~~~~~~~~~
谢谢大家先!