linq运行错误“不支持带有本地集合的查询 ” 如何解决?急~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

cantonstar 2009-04-15 02:11:29
q=database.post.AsQueryAble();

q1=database.forumPost.AsQueryAble();
forumPost是post的子表。现在查询的时候有下面的问题:

var postIDs = database.PostProducts.Where(pp => pp.ProcuctID == ProductID).Select(pp => pp.PostID);

q = q.Where(p => postIDs.Contains(p.ID));

q1 = q1.Where(fp => q.Select(p => p.ID).Contains(fp.PostID));

运行的时候提示"不支持带有本地集合的查询",觉得好像是因为有两个Contains所以解释为SQL的时候出错,哪位高手遇到过这种问题?该如何解决?


...全文
453 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
itcrazyman 2009-04-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 yangqidong 的回复:]
var q=database.post.ToList();
var q1=database.forumPost.ToList();
var postIDs = database.PostProducts.Where(pp => pp.ProcuctID == ProductID)
.Select(pp => pp.PostID).ToList();
q = q.Where(p => postIDs.Contains(p.ID));
q1 = q1.Where(fp => q.Select(p => p.ID).Contains(fp.PostID));
[/Quote]
mark up 帮顶
yangqidong 2009-04-16
  • 打赏
  • 举报
回复
var q=database.post.ToList();
var q1=database.forumPost.ToList();
var postIDs = database.PostProducts.Where(pp => pp.ProcuctID == ProductID)
.Select(pp => pp.PostID).ToList();
q = q.Where(p => postIDs.Contains(p.ID));
q1 = q1.Where(fp => q.Select(p => p.ID).Contains(fp.PostID));

sky911911 2009-04-15
  • 打赏
  • 举报
回复
代码能详细的贴出来吗?没遇见过这样的问题 楼主说的好像的原因好像不是原因吧!
CeShenBeiWang 2009-04-15
  • 打赏
  • 举报
回复
up

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧