日期:2014-05-18  浏览次数:20521 次

新手求助~~我写了一个方法,在for循环执行完ListItem后,return不出ListItem对象
private   ListItem   objItems(DataSet   objDs,string   table)
{
DataSet   dataset   =   objDs;
for(int   i=0;i <objDs.Tables[ " "+table+ " "].Rows.Count;i++)
{
ListItem   objListItem   =   new   ListItem();
objListItem.Value   =   dataset.Tables[ " "+table+ " "].Rows[i][0].ToString();
objListItem.Text   =   dataset.Tables[ " "+table+ " "].Rows[i][1].ToString();
}
       
return   objListItem;
}

------解决方案--------------------
private ListItem objItems(DataSet objDs,string table)
{
DataSet dataset = objDs;
ListItem objListItem = new ListItem();

for(int i=0;i <objDs.Tables[ " "+table+ " "].Rows.Count;i++)
{
objListItem.Value = dataset.Tables[ " "+table+ " "].Rows[i][0].ToString();
objListItem.Text = dataset.Tables[ " "+table+ " "].Rows[i][1].ToString();
}

return objListItem;
}

------解决方案--------------------
其次 objListItem.Value = dataset.Tables[table].Rows[i][0].ToString();
objListItem.Text = dataset.Tables[table].Rows[i][1].ToString();

应该是这样,代码错误

还有你的逻辑也是错的 for(int i=0;i <objDs.Tables[ " "+table+ " "].Rows.Count;i++)

{.......}

return objListItem;
循环结束后传回listitem,结果传回的只是table的最后一条记录
你应该是声明一个ListItem的数组这样才对