代码之家  ›  专栏  ›  技术社区  ›  zerkms

linq2sql和多个连接

  •  1
  • zerkms  · 技术社区  · 16 年前

    是否可以执行多个联接:

    from g in dataContext.Groups
    join ug in dataContext.UsersGroups on g.Id equals ug.GroupId
    join u in dataContext.Users on u.
    where ug.UserId == user.Id
    select GroupRepository.ToEntity(g);
    

    在上面的示例中,直到我在第3行末尾按“.”为止,一切都很好。在那里我期望得到智能感知和写作 u.Id == ug.UserId 但它没有出现。当然,这段代码不会在之后编译。

    我做错什么了?

    回答 :别名的顺序很重要。所以我用过 ug.UserId equals u.Id

    1 回复  |  直到 16 年前
        1
  •  0
  •   Raj Kaimal    16 年前

    以下代码适用于Linq to SQL(Northwind数据库)

     var dataContext = new NorthwindDataContext();
     var x = from c in dataContext.Customers
           join o in dataContext.Orders on c.CustomerID equals o.CustomerID
           join od in dataContext.Order_Details on o.OrderID equals od.OrderID
           select c;
    
    推荐文章