8,497
社区成员
发帖
与我相关
我的任务
分享
var query=from s in db.SubArea
......此处省略
select new{
....//此处省略
Zhan = db.Customer.Where(c => (db.graveTemp.Where(g => g.subarea == s.Id).Select(g => g.gvid).Contains(c.FgrvId)))
};
//提示错误错误 “System.Linq.IQueryable<int>”不包含“Contains”的定义,并且最佳扩展方法重载 “System.Linq.ParallelEnumerable.Contains<TSource>(System.Linq.ParallelQuery<TSource>, TSource)”的某些参数无效 F:\projects\TombPrj\TombDAL\GraveService.cs 346 60 TombDAL
var query=(from s in db.SubArea
join g in db.graveTemp on g.subarea equals s.Id select g.gvid)
.Intersect(db.Customer.Select(c=>c.FgrvId)).Count(); //Select后面可以ToLict()不过那样其实就变成两个语句了
var query=(from s in db.SubArea
join g in db.graveTemp on g.subarea equals s.Id
join c in db.Customer on g.FgrvId==c.FgrvId
select c).Count();
var query=(from s in db.SubArea
join g in db.graveTemp on g.subarea equals s.Id select g.gvid)
.Count(gid => db.Customer.Any(c=>c.FgrvId==gid));