实体框架两个视图之间的关系

时间:2012-09-10 22:15:36

标签: c# asp.net-mvc-3 linq entity-framework

我正在尝试编写一个Query,它在结果中连接了我的两个视图。不知道为什么我不能让它工作:

var query = AccountUnitOfWork.Accounts.Find()
    .Join(AccountUnitOfWork.Subscriptions.Find(), x => x.ID, s => s.ID);

这是否需要我编写原始SQL,因为实体无法接受关系?

1 个答案:

答案 0 :(得分:2)

Find返回一个实体,它不返回IQueryable。加入仅适用于IQueryable。

此外,您在Join中的查询也不会起作用,因为它也会返回单个实体。

你需要做这样的事情:

AccountUnitOfWork.Accounts.Join(AccountUnitOfWork.Subscriptions, x => x.ID, s => s.ID)

您可能也希望使用Wher子句限制该集。