2011-03-18 78 views
4

而不是写一个LINQ查询的,是有办法,我可以做一个简单地做这样的事情加盟:怎么办在实体框架加入

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

    return View(Account.SingleOrDefault()); 
} 

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

回答

5

LINQ真的是你更好的选择,事情开始变得忙碌在拉姆达的真快和LINQ只是看起来好了很多,考虑到结构化的方式相比,拉姆达的

看到这个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子句。