【问题标题】:Use Linq to get items in a list using a second list [duplicate]使用Linq使用第二个列表获取列表中的项目[重复]
【发布时间】:2014-11-03 22:15:11
【问题描述】:

我已经为此苦苦挣扎了几个小时,如果可能的话,我将不胜感激。

我有一个 ID 列表 - List() 我有一个产品列表 - List()

我想从存在 ID 的产品列表中提取所有行。

提前致谢。

【问题讨论】:

  • 了解 LINQ Join 方法。

标签: c# asp.net linq


【解决方案1】:

你可以使用包含

var items = products.Where(p => idList.Contains(p.ID));

【讨论】:

  • 似乎我非常接近 - 我确信我在某个阶段有相同的语法 - 但显然不是!谢谢这个作品。
【解决方案2】:

你需要这样的东西吗?

List<Product> products = // initialize list
List<int>     IDs =      // initialize list

List<Product> containedProducts = products.Where(p => IDs.Contains(p.ID)).ToList();

【讨论】:

    【解决方案3】:
    var result = from p in products
                 join i in ids
                 on p.Id = i
                 select p;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多