id | name | parentid |
1 | a | 0 |
2 | b | 1 |
3 | c | 1 |
4 | d | 3 |
5 | e | 4 |
6 | f | 2 |
7 | g | 3 |
8 | h | 2 |
9 | i | 8 |
通过数据库访问该表,得到一个数据集相应数据表,
然后将参数输入下面的函数中(用C#编程)。
......
SqlDataAdapter da=new SqlDataAdapter(strSql,cn);
DataSet ds=new DataSet();
da.Fill(ds,"tree");
DataTable dt=ds.Tables["tree"];
string str=func_xml("0",dt);
public string func_xml(string parentid,DataTable dt)
{
string str="";
string _id,_name,_parentid;
int rowcount=dt.Rows.Count;
for(int i=0;i<rowcount;i++)
{
_id=dt.Rows[i][0].ToString();
_name=dt.Rows[i][1].ToString().Trim();
_parentid=dt.Rows[i][2].ToString();
if(_parentid==parentid)
{
str+="<"+_name+">"+func_xml(dt.Rows[i][0].ToString(),dt)+"</"+_name+">";
}
}
return str;
}
......