因为有两张表是关联的关系。
A表,AID,ANAME。B表,BID,BNAME,AID
后台
List<tbl_a> lista = db.tbl_a.Select(a => a).ToList();
StringBuilder sb = new StringBuilder();
sb.Append("[");
for (int i = 0; i < lista.Count; i++)
{
sb.Append("{\"id\":" + lista[i].AID + ",\"text\":\"" + lista[i].ANAME + "\"");
int aID = lista[i].AID;
List<tbl_b> listb = db.tbl_b.Where(s => s.AID == aID).ToList();
if (listb.Count > 0)
{
sb.Append(",\"children\":[");
for (int j = 0; j < listb.Count; j++)
{
sb.Append("{\"id\":" + listb[j].BID + ",\"text\":\"" + listb[j].BNAME + "\"},");
}
sb.Replace(',', ' ', sb.Length - 1, 1);
sb.Append("]},");
}
else
{
sb.Append("},");
}
}
sb.Replace(',', ' ', sb.Length - 1, 1);
sb.Append("]");
string strjson = sb.ToString();
数据
[{"id":1,"text":"A","children":[{"id":3,"text":"AA"},{"id":4,"text":"AB"},{"id":10,"text":"AC"} ]},{"id":2,"text":"B","children":[{"id":1,"text":"BA"},{"id":2,"text":"BB"} ]},{"id":3,"text":"C","children":[{"id":11,"text":"CA"} ]} ]
A
aa
ab
B
ba
bb
C
ABC,是一张表A里的,
aa,ab...是表B里的,
假如,我要删除aa,很简单,直接删除B表的aa。
如果我要删除A,那么要删除A表中的A,和B表中的aa,ab,
怎么判断选择的是A表中的节点,还是选择的是B表中的节点