Entity framework 查询

简介: 1.简单查询 2.多表查询 3.高级查询 public List GetUsers(string companyID, string userName, int skip, int limit) { var dc = new DbContext(); var query = (from c in dc.

1.简单查询

2.多表查询

3.高级查询

 
 public List<User> GetUsers(string companyID, string userName, int skip, int limit)
        {
            var dc = new DbContext();
            var query = (from c in dc.Users
                         join d in dc.UserRoles on c.Id equals d.UserId
                         join e in dc.Roles on d.RoleId equals e.Id
                         where c.CompanyId == companyID && c.IsDeleted == false && (string.IsNullOrWhiteSpace(userName) ? true : c.UserName.Contains(userName))
                         orderby c.Id
                         select new
                         {
                             Id = c.Id, 
                             UserName = c.UserName, 
                             RoleName = e.Name
                         }).Skip(skip).Take(limit).ToList()
                         .Select(x => new User
                         {
                             Id = x.Id, 
                             UserName = x.UserName, 
                             RoleName = x.RoleName
                         }).ToList();

            return query;
        }

这个查询是一个包含了条件过滤、分页、多表、转换为实体列表的综合查询,缺点是条件过滤无法动态化

 

相关文章
|
存储 开发框架 .NET
Entity Framework基础01
Entity Framework基础01
178 0
Entity Framework基础01
|
索引
Entity Framework 索引
Entity Framework 索引
200 0
|
缓存 数据库 数据安全/隐私保护
Entity Framework Core 实现全局查询过滤
Entity Framework Core 实现全局查询过滤
188 0
|
数据库 数据库管理
Entity Framework 小知识(一)
Entity Framework 小知识(一)
107 0
|
数据库
Entity Framework 小知识(三)
Entity Framework 小知识(三)
129 0
|
索引
Entity Framework 小知识(四)
Entity Framework 小知识(四)
116 0
|
数据库
Entity Framework 小知识(五)
Entity Framework 小知识(五)
119 0
|
SQL 数据库
Entity Framework 小知识(二)
Entity Framework 小知识(二)
149 0
|
关系型数据库 MySQL