恕我直言,我认为这是对我来说最困难的事情 - 整个LINQ的MTM方面我需要帮助。查询LINQ时遇到的困难多对多(MTM)协会
在SQL我有3个表:Accounts
,AccountsInFeatures
和Features
。 AccountsInFeatures
只有两个主键列链接到Accounts
到Features
。
在EF,AccountsInFeatures
是不可见的 - 我明白为什么 - 但我在创建LINQ有问题:
这里就是我想要做的事:
return (from a in _Store.Accounts
where a.AccountGUID == _AccountGUID
select new AccountDetails
{
AccountGUID = a.AccountGUID
AccountName = a.AccountName,
SelectedFeatures = a.Features.Select(f => f.FeatureGUID).ToList()
}).ToList();
这里的定义AccountDetails
:
public class AccountDetails
{
public Guid AccountGUID { get; set; }
public string AccountName { get; set; }
public List<Guid> SelectedFeatures { get; set; }
}
如何填写"SelectedFeatures"
与功能的列表 - 这可能吗?我亲近的只是分裂成两个查询此=)
顺便说一句,你的意思MTM是什么?只是好奇... –
MTM =多对多 – Losbear
好的...我想过那个。 :)我习惯了M×M表示法。 –