日期:2014-05-17  浏览次数:20502 次

Entities 不识别方法Contains怎么办?
我用的是3.5

 var listOfIds = new int[] { 5, 6, 7, 9};             
 var per = edm.perAut.Where(item =>listOfIds.Contains(item.id));         

错误提示:
LINQ to Entities 不识别方法“Boolean Contains[Int32]

------解决方案--------------------
Contains没错啊
------解决方案--------------------
看上去没错哈
------解决方案--------------------
EF4才支持Contains,你可以试试这个方法
http://www.cnblogs.com/chriskwok/archive/2010/04/03/LINQ.html
  
*****************************************************************************
签名档: http://feiyun0112.cnblogs.com/
------解决方案--------------------
野蛮点的做法是这样子的:

var listOfIds = new int[] { 5, 6, 7, 9};             
 var per = edm.perAut.AsEnumerable().Where(item =>listOfIds.Contains(item.id));
         
------解决方案--------------------
7楼如此野蛮的方法也不行?

var per = edm.perAut.ToList().Where(item =>listOfIds.Contains(item.id));
------解决方案--------------------
估计是版本的问题吧