用树从数据库中生成公司组织结构的困惑
yzdy 2002-09-13 03:43:00 我用C#编写一个以树显示公司组织结构的程序,遇到下面的问题:
private void GetFolders( string parent, TreeNodeCollection nodes )
{
System.Data.SqlClient.SqlDataReader myreader;
sqlCommand1.CommandText="select dept_code,content from deptcode where parent="+parent;
//depatcode:部门信息有 dept_code-上级部门代码 content-部门名称
myreader=sqlCommand1.ExecuteReader();
int index=0;
while(myreader.Read() )
{
nodes.Add(Node( "",myreader.GetString(1),"folder"));
GetFolders(myreader.GetString(0),nodes[index].Nodes);
index++;
}
运行后,出现错误提示:
“已有打开的与此连接相关联的 DataReader,必须首先将它关闭。”
而用PHP写,很成功的实现
function readdepart($parent)
{
$sql="select * from deptcode where parent=$parent";
$result=mssql_query($sql);
$num=mssql_num_rows($result);
while($dept=mssql_fetch_array($result))
{
echo $dept[CONTENT];
echo "<br>";
readdepart($dept[DEPT_CODE]);
}
}
请问有没有好的解决方法?