我有两个连接到两个不同数据库的上下文类,所以我试图在这些实体之间进行连接,但是当我写道:
RackJoinList rjlist = new RackJoinList();
var racks = from rack in tms.TMSRacks
.Where(a=>a.Technology.Tag.ToUpper().StartsWith(q.ToUpper()) || (q ==null))
select rack;
rjlist.Racks = racks.ToList();
var resources = from resource in entities.Resources join c in rjlist.Racks.AsQueryable()
on resource.RESOURCEID ==
我无法加入资源和rjlist.Rack,有人可以建议吗?
答案 0 :(得分:1)
尝试使用on resource.RESOURCEID equals
而不是==
答案 1 :(得分:1)
如错误所示,您无法跨两个数据库实例加入。您可以在一个数据库中添加链接表,然后加入它。或者,如果您知道查询一侧的记录数量相对较少(2000年以下),您可以从第一个表中获取ID,然后使用.Contains方法生成IN子句而不是使用连接。否则,您将无法将两个表中的所有记录加载到内存中,然后使用LINQ to Objects连接它们(这可能是性能瓶颈)。