zoukankan      html  css  js  c++  java
  • EF连表查询

    EF连表查询

    二张表Join

    b代表主表Business,p代表副标

      public ActionResult list()
            {
                //如果想N张表,再向db.BusinessPress后面加
                var data = db.Business.Join(db.BusinessPress, b => b.BPress, p => p.ID, (b, p) => new
                {
                    ID = b.ID,
                    BName = b.BName,
                    BPress = p.PName,
                    Price = b.Price,    
                }).ToList();
    
                //ViewModel
                List<VMBusiness> list = new List<VMBusiness>();
                data.ForEach(item =>
                {
                    list.Add(new VMBusiness()
                    {
                        ID = item.ID,
                        BName = item.BName,
                        BPress = item.BPress,
                        Price = item.Price,
                 
                    });
                });
                return View(list);
            }

     三张表Join

    b代表主表Business,p代表副标Businesspress,a代表b,p合成的表,c代表LoginPress表

                var data = db.Business.Join(db.BusinessPress, b => b.BPress, p => p.ID, (b, p) => new
                {
                    b,
                    p
                }).Join(db.LoginPress, a => a.b.LoginID, c => c.LoginID, (a, c) => new
                {
                    ID = a.b.ID,
                    BName = a.b.BName,
                    BPress = a.p.PName,
                    Price = a.b.Price,
                    Quantity = a.b.Quantity,
                    Photo = a.b.Photo,
                    LoginID = c.LoginName
                }).ToList();

    N表Join

    就是在后面+N个join

    注意类型

  • 相关阅读:
    1
    vim配置
    pyspark
    添加底部小火箭+目录
    00
    博客园代码高亮设置
    01. 枚举类型
    01. 授权问题
    Android Studio打包签名全过程
    linux 阿里云源地址
  • 原文地址:https://www.cnblogs.com/mvpbest/p/13460254.html
Copyright © 2011-2022 走看看