【发布时间】:2015-09-25 00:00:30
【问题描述】:
我的控制器 get 方法中有以下内容
private PeopleContext Peopledb = new PeopleContext();
private IARContext db = new IARContext();
public ActionResult OwnerList()
{
var owners = from s in db.Owners
where s.Dormant == false
orderby s.Post.PostName
select s;
var viewModel = owners.Select(t => new OwnerListViewModel
{
Created = t.Created,
Post = Peopledb.Posts.FirstOrDefault(x => x.PostId == t.SelectedPostId).PostName.ToString(),
});
return PartialView("_OwnerList", viewModel);
}
我在尝试加载页面时收到此错误:
指定的 LINQ 表达式包含对与不同上下文关联的查询的引用。
我知道问题是 LINQ 无法查询两个不同的上下文,但是在这里尝试了几种解决方案后,我似乎无法解决问题并成功查询 Peopledb.Posts 表以找到相关的 PostName 以显示数据库中的每个实例.Owners 表。
【问题讨论】:
-
他们在同一个服务器上吗?在 IAR 中创建视图或同义词,以在 People 中为您提供所需的表。
-
如果它们不在同一台服务器上,链接服务器可能会有所帮助。
标签: c# .net entity-framework linq