zoukankan      html  css  js  c++  java
  • EF的连表查询Lambda表达式和linq语句(转)

    转载来源

    https://www.cnblogs.com/tinya/p/4623503.html

    var lst = from c in db.Blogs join p in db.Posts on c.Id equals p.BlogId where p.Id==1 select c;
    var lst1 = db.Blogs.Join(db.Posts.Where(p=>p.Id==1), b=> b.Id, p=> p.BlogId, (b, p) => new {b});
    
    public class Blog
     {
        public int Id { get; set; }
        public string Title { get; set; }
     }
    
    
     public class Post
     {
        public int Id { get; set; }
        public string Title { get; set; }
        public int BlogId { get; set; } 
     }
    
    public List<CommentsViewModel> GetCommentsByPid(int pid, int uid)
            {
                var query = from a in db.Photos
                            join b in db.Comments on a.PID equals b.PID
                            join c in db.Users on b.UID equals c.UID
                            where a.PID == pid
                            select new CommentsViewModel { Id = b.ID, Author = c.UserName, Comment = b.Content, UserAvatar = c.HeadPic, CanDelete = uid == b.UID ? true : false, CanReplay = true, TempDate = b.CreateTime, ParentId = b.ParentId };
                var ret = query.ToList();
                return ret;
    
           //或者
                var data = db.Photos.
                        Join(db.Comments, p => p.PID, c => c.PID,
                        (p, c) => new { p, c }).
                        Join(db.Users, n => n.c.UID, u => u.UID, (n, u) => new { n, u })
                        .Where(m => m.n.p.PID == pid)
                        .Select(m => new CommentsViewModel
                        {
                            Id = m.n.c.ID,
                            Author = m.u.UserName,
                            Comment =m.n.c.Content,
                        });
                return data.ToList();
            }
  • 相关阅读:
    VC编程锦集-1
    VC窗口关闭调用顺序
    Windows消息WM_USER、WM_APP的区别
    Toolbar添加控件;创建多行toolbar;重新排列toolbar
    SQL模糊查询详解
    MySql格式化日期
    Apache PHP 服务环境配置
    kvm.install
    repo搭建
    apache故障处理
  • 原文地址:https://www.cnblogs.com/hao-1234-1234/p/12460613.html
Copyright © 2011-2022 走看看