标签:style blog io ar color os sp for strong
在EF中Code First中实现无限递归
类: Module
属性:Module.Parent, Module.ChildrenModules
public IEnumerable<Module> RootModules() { using (DbContext context = new DbContext()) { IRepository<Module> rm = new Repository<Module>(context); IList<Module> modules = rm.Set.Where(p => p.ParentModule == null).ToList(); foreach (Module m in modules) { GetModules(m, rm); } return modules; } } protected void GetModules(Module module, IRepository<Module> rm) { IList<Module> modules = rm.Set.Where(p => p.ParentModule.ID == module.ID).ToList(); module.ChildrenModules.Concat(modules); foreach (Module m in modules) GetModules(m, rm); }
在EF中Code First中实现无限递归
类: Module
属性:Module.Parent, Module.ChildrenModules
public IEnumerable<Module> RootModules()
{
using (DbContext context = new DbContext())
{
IRepository<Module> rm = new Repository<Module>(context);
IList<Module> modules = rm.Set.Where(p => p.ParentModule == null).ToList();
foreach (Module m in modules)
{
GetModules(m, rm);
}
return modules;
}
}
protected void GetModules(Module module, IRepository<Module> rm)
{
IList<Module> modules = rm.Set.Where(p => p.ParentModule.ID == module.ID).ToList();
module.ChildrenModules.Concat(modules);
foreach (Module m in modules)
GetModules(m, rm);
}
标签:style blog io ar color os sp for strong
原文地址:http://www.cnblogs.com/guansanyue/p/4117596.html