【问题标题】:how to do a Join in Entity Framework如何在实体框架中加入
【发布时间】:2011-07-17 22:17:39
【问题描述】:

除了编写 linq 查询之外,有没有一种方法可以通过简单地执行以下操作来进行连接:

using (var db = new MatchGamingEntities())
{
    db.Accounts.Join() //I am unsure of the syntax
    db.Accounts.Include...
    ...

    return View(Account.SingleOrDefault());
}

我想用这些预定义的Entity函数而不是写linq,实用吗?另外,您如何使用这些预定义的功能?我有一个名为“Accounts”和“BankTransactions”的表,它们都有共同的 AccountId,我将如何使用这些函数查询它以及它将返回其一对多关系的结果类型。

【问题讨论】:

    标签: c# asp.net asp.net-mvc-3


    【解决方案1】:

    LINQ 确实是您更好的选择,Lambda 的速度非常快,而 linq 的结构化方式看起来比 lambda 好很多

    查看此 SO 帖子:

    C# Joins/Where with Linq and Lambda

    var query = db.Accounts.Join(db.BankTransactions,
         acc => acc.AccountID,
         bank => bank.AccountID,
         (acc,bank) => new { Account = acc, BankTransaction = bank });
    

    编辑: 这应该(或类似的东西)返回一个查询,该查询将返回一个帐户集合,并且在每个帐户中它是相关的 BankTransaction。

    应该这样做,但如果可能的话,宁愿使用 LINQ。

    编辑:作为事后的想法,您可以在上面添加额外的 Lamba 扩展,例如 where 子句。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-29
      • 2011-09-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多