c#递归中的DataReader的一些问题
private bool fillTree(ref TreeNode pNode, int parentId)
{
string queryString = “SELECT mId,parentId,mName,mPath,mHide FROM musicInfo WHERE parentId=” + parentId.ToString();
SqlCommand command = new SqlCommand(queryString, myConn);
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
TreeNode nNode = null;
if (null == pNode)
{
nNode = musicTree.Nodes.Add(reader[2].ToString());
}
else
{
nNode = pNode.Nodes.Add(reader[2].ToString());
}
fillTree(ref nNode,(int)reader[0]);
}
return true;
}
这段代码居然在递归的时候说command已经有了reader,根使用了static一样,应该是每次递归都创建一个新的command和reader才对呀,不知道.net是怎么处理reader的,反正这样用是不能执行,只能使用dataSet了。
| anyShare分享到: | |
| |
