Entity framework 4 是否可以将.NET集合中的列表对象与EF中的enity对象联接
例如,我可以将.net集合中的list对象与EF中的enity对象连接起来吗Entity framework 4 是否可以将.NET集合中的列表对象与EF中的enity对象联接,entity-framework-4,Entity Framework 4,例如,我可以将.net集合中的list对象与EF中的enity对象连接起来吗 var prodts = from req in Product join prod in context.ProductApplications on req.ProductGUID equals prod.ProductGUID slect req; 产品是lsit对象。context.ProductApplications是Enity对象 我能加
var prodts = from req in Product
join prod in context.ProductApplications on req.ProductGUID equals prod.ProductGUID
slect req;
产品是lsit对象。context.ProductApplications是Enity对象
我能加入他们吗?谁能告诉我怎么加入他们吗。替代方法链接语法:
var prodts = Product.
Join(
context.ProductApplications,
req => req.ProductGUID,
prod => prod.ProductGUID,
(req, prod) => req
);
这将返回IEnumerable
。Join方法将IEnumerable
作为第一个参数,因此实际发生的是查询数据库并上下文。将获取ProductApplications
并枚举结果。生成的对象将用于与产品
集合“连接”
更新
根据您的评论,您在产品?
集合中有一些guid
,您希望从上下文中获取所有实体。ProductApplications
“匹配”那些guid
(如果我错了,请纠正我)。如果是这样的话,您就不需要加入了
var prodts = context.
ProductApplications.
Where(pa => Product.
Select(p => p.ProductGUID).
Contains(pa.ProductGUID)
);
谢谢你的回答,我有一个稍微不同的问题,在我的数据库中,我有一个包含一些GUID的临时表,我想在临时表中找到数据库中所有具有相同GUID的产品。产品表是巨大的,因为我只需简单地加入数据库并重新保存数据。若我想在MT中的enity框架中实现这一点,我创建了一个列表集合,并加入了产品enity,正如您前面提到的那个样。但是,它在自己从数据库中提取数据的同时,也在等待。希望你能理解这个问题,在enity框架中有什么方法可以解决吗?不,我真的不理解这个问题,你能试着用不同的方式来解释吗?这些要点现在相当模糊:“我创建了一个列表集合并加入了产品enity”
-据我所知,您有一个产品集合(它被称为产品
,顺便说一句,它是打字错误吗?它应该是产品
?)和一个产品应用程序集合(动态获取)。您使用LINQ
将它们连接起来,并获得结果集合。如果我错了,请纠正我。另一个模糊句子是这样的:但是它在从数据库中自动读取数据时超时了
好吧,让我重新表述一下,当我使用上面提到的join时,它抛出了一个错误,表示从数据库中读取行时超时,我的意思是从context.productenity中读取行时超时。因为数据库中的ProductApplications表非常庞大。我怎样才能解决这个问题。