TakeWhile如何使用

永动bug制造机 2011-09-09 10:21:05

var query = db.Customer.SkipWhile(c => c.Id < 5).TakeWhile(c => c.Id < 10);

提示错误为

不支持查询运算符“TakeWhile”。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NotSupportedException: 不支持查询运算符“TakeWhile”。

...全文
257 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
2#的应该就可以了

var query = db.Customer.Where(c => c.Id >= 5 && c.Id < 10);


你的选择B 2011-09-11
  • 打赏
  • 举报
回复
分开写吧,先把结果放在list里面,不知道为什么直接放在lamda好像不支持

List<Customers> v8 = db.Customers.Select(c => c).ToList();

var v00 = v8.TakeWhile(c => c.CustomerID.Length > 4).SkipWhile(c => c.CustomerID == "ALFKI");

foreach (var v in v00)
Console.WriteLine(v.CustomerID);
永动bug制造机 2011-09-09
  • 打赏
  • 举报
回复
this.gvCustomer.DataSource=query.ToList();
无效。
你的选择B 2011-09-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 dgtg77 的回复:]

不支持查询运算符“TakeWhile”。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NotSupportedException: 不支持查询运算符“TakeWhile”。

源错误:


行 19: var query = db.Custo……
[/Quote]
this.gvCustomer.DataSource=query.ToList();
永动bug制造机 2011-09-09
  • 打赏
  • 举报
回复
不支持查询运算符“TakeWhile”。
说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NotSupportedException: 不支持查询运算符“TakeWhile”。

源错误:


行 19: var query = db.Customer.Select(c => c).SkipWhile(c => c.Id < 5).TakeWhile(c => c.Id < 10);
行 20: this.gvCustomer.DataSource = query;
行 21: this.gvCustomer.DataBind();行 22: }
行 23: }

8,497

社区成员

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

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