LinqToEntities:Union IEqualityComparer

转自:http://stackoverflow.com/questions/2296966/linq-to-entities-unions-distinct

 

 

Q:

I don't know how I can do several union with a distinct.

When I use .Distinct with an IEqualityComparer an exception in threw :

LINQ to Entities does not recognize the method 'System.Linq.IQueryable'

My code is

  = query.(query1).(query2); 
 = .( ()); 

 

A:

LINQ to Entities does not support the overload of Distinct which takes an IEqualityComparer. When you think about it, it really can't, because LINQ to Entities queries will be converted to SQL, and you cannot convert an interface reference to SQL.

Therefore, you must either:

  the overload of  which does  take any compare,  
   both lists   space   the   LINQ to , like : 
 
  = query.(query1).(query2); 
 = .().( ()); 

Naturally, the risk here is that you might bring too many records back from the DB server. You could also use both of these techniques in order to do a portion of the comparison on the server and another portion in object space.

转载于:https://www.cnblogs.com/yangfan/archive/2010/04/26/1720981.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值