internal static string GetTree(NameValueCollection paras)
{
var canshu= paras["canshu"] ?? "";//参数
ResponseMsg msg = new ResponseMsg();//响应消息体
using (var db = new Entities())//使用EF模型
{
try
{
var lstTable= db.Table.Where(i => i.CanShu== canshu).ToList();
if (lstTable.Count > 0)
{
msg.data = TableTree(lstTable, "");
}
else
{
msg.data = new JArray();
}
}
catch (Exception ex)
{
msg.UpdateStatus(MsgCode.操作失败);
}
}
msg.UpdateStatus(MsgCode.操作成功);
return GYCommon.Json.GYJson.Serialize(msg);
}
private static JArray TableTree(List<Table> lstTable, string canshu)
{
var ja = new JArray();
var lstTable2 = lstTable.Where(i => i.CanShu== canshu)//可以作为根节点的参数
.ToList();
if (lstTable2 .Count > 0)
{
foreach (var iTable2 in lstTable2 )
{
var jo = new JObject();
jo["id"] = iTable2.CanShu1;
jo["title"] = iTable2.CanShu2;
jo["PGUID"] = iTable2.CanShu;
jo["APPFlag"] = iTable2.CanShu3;
JArray _Children = TableTree(lstTable, iTable2.CanShu3);
jo["children"] = _Children;
ja.Add(jo);
}
return ja;
}
else
{
return ja;
}
}
C#树形图+递归
最新推荐文章于 2024-07-26 16:22:28 发布