【问题标题】:How can I use Linq to join between objects and entities?如何使用 Linq 连接对象和实体?
【发布时间】:2011-11-05 16:20:03
【问题描述】:

我在内存中有一组 ID,我想只从与这些 ID 匹配的数据库中获取行。

在 SQL 中,我可以编写像 SELECT * FROM mytable WHERE id IN (1,3,5,10) 这样的查询,也可以在表之间进行连接。

我的问题是 EF 无法在我将 EF 数据与本地数组或列表连接的地方构建查询。

(我使用的是 EF4.1,但我猜问题/解决方案在旧版本以及 Linq-to-SQL 中会类似。)

【问题讨论】:

    标签: linq entity-framework


    【解决方案1】:

    您可以使用Contains() 和您的ID 集合myIDs 来生成等效的WHERE id IN .. 查询:

    var results = context.mytable.Where(x => myIds.Contains(x.Id));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-15
      • 2011-03-06
      • 2010-12-03
      • 1970-01-01
      • 1970-01-01
      • 2013-05-15
      • 2018-05-05
      相关资源
      最近更新 更多