为什么这个循环都不返回结果,怎样才可以有返回?
protected DataTable hui = new DataTable();
protected void Page_Load(object sender, EventArgs e)
{
//na = dat();
for (int i = 0; i < na.Rows.Count; i++)
{
int sID = Convert.ToInt32(na.Rows[i]["ID"].ToString());
hui = hut(sID);
}
}
protected static DataTable hut(int sID)
{
SqlDataAdapter dar = sql.SdaOpen("select * from hui where faID = " + sID);
DataSet s = new DataSet();
dar.Fill(s, "a");
return s.Tables["a"];
}
------解决方案-------------------- for (int i = 0; i < na.Rows.Count; i++)
{
int sID = Convert.ToInt32(na.Rows[i]["ID"].ToString());
hui = hut(sID);
}
这个循环,hui最后只得到一条数据,而且是最后一条。
------解决方案--------------------
------解决方案--------------------DataTable hui 每次循环都被覆盖掉。
最后返回的是最后一个sID 得到的sID
应该得把每次得到的DataTable 累加起来。
protected DataTable hui = new DataTable();
protected void Page_Load(object sender, EventArgs e)
{
//na = dat();
for (int i = 0; i < na.Rows.Count; i++)
{
int sID = Convert.ToInt32(na.Rows[i]["ID"].ToString());
DataTable newTable= hut(sID);
hui.Merge(Merge);
}
}