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

如何在c中创建多对多linq查询?

  •  0
  • gurehbgui  · 技术社区  · 12 年前

    我的linq语句有问题,我的结构如下:

    Class1有一个id和对Class2列表的引用 Class2有一个id和对Class1列表的引用

    现在我想做一个linq查询,如下所示: 获取id==1的所有Class1 从这些元素中获取所有没有id为2的Class2的元素(在引用列表中)

    如何用一个命令做到这一点?

    1 回复  |  直到 12 年前
        1
  •  4
  •   ColinE    12 年前

    下面的怎么样。。。

    List<Class1> classOneList = ...
    List<Class2> classTwoList = ...
    
    var items = classOneList.Where(c1 => c1.Id == 1)
                            .Where(c1 => !c1.Class2Collection.Any(c2 => c2.Id == 2));