在Linq中的嵌套子查询

it2022-05-05  167

如何在Linq中嵌套子查询 首先创建一个类或者多个类:

public class zTreeVo { public int? id { get; set; } public string name { get; set; } public int? pId { get; set; } public string cityname { get; set; } public List<CityzTreeVo> CityzTree { get; set; } }

如果,只是查询某个字段,只需要在类里面声明一个字符串变量来接收,如果是查询某个ID,就在类里面声明一个整数变量来接收

List<zTreeVo> listProvince = (from tbProvince in myModel.T_Province select new zTreeVo { id = tbProvince.ProID, name = tbProvince.ProName, pId = 0, cityname = (from tbCity in myModel.T_City where tbCity.ProID == tbProvince.ProID select tbCity.CityName).FirstOrDefault() }).ToList();

FirstOrDefault():返回序列中的第一个元素;如果序列中不包含任何元素,则返回默认值

public class zTreeVo { public int? id { get; set; } public string name { get; set; } public int? pId { get; set; } public List<CityzTreeVo> CityzTree { get; set; } }

如果是查询某表的数据,就要在类里面再声明一个类来接收

List<zTreeVo> listProvince = (from tbProvince in myModel.T_Province select new zTreeVo { id = tbProvince.ProID, name = tbProvince.ProName, pId = 0, CityzTree = (from tbCity in myModel.T_City where tbCity.ProID == tbProvince.ProID select new CityzTreeVo { cityid = tbCity.CityID, cityname = tbCity.CityName, citypId = tbCity.ProID, }).ToList() }).ToList();

输出结果:


最新回复(0)