LINQ查询into子句
在LINQ查询表达式中,into子句可以创建一个临时标识符,使用该标识符可以存储group、join或select子句的结果。下面的代码实例中的GroupOtherQuery()函数演示了group子句对查询的结果进行分组的方法,具体步骤说明如下。
(1)创建数据类型为List<UserInfo>的数据源users。
(2)使用group子句对结果进行分组。其中,根据用户名称(Username属性的值)的序号的奇偶进行分组。
(3)使用into子句创建临时标识符g存储查询结果。
(4)使用where子句筛选组包含元素的数量大于等于5的组。
(5)使用嵌套foreach语句输出查询的结果。
private void GroupOtherQuery() { ///构建数据源 List<UserInfo> users = new List<UserInfo>(); for (int i = 1; i < 10; i++) { users.Add(new UserInfo(i,"User0" + i.ToString(),"User0" + i.ToString() + "@web.com")); } ///根据用户的Username的值进行分组 var values = from u in users group u by Int32.Parse(u.Username.Substring(u.Username.Length - 2)) % 2 == 0 into g where g.Count() >= 5 select g; ///显示查询结果 foreach (var v in values) { foreach (UserInfo u in v) { Response.Write(u.Username + "</br>"); } } }
注意:一般情况下,group子句不需要使用into子句。如果需要对group子句的结果中的每一个组进行操作,则需要使用into子句来表示结果中的组。
运行上述实例代码,在IE浏览器中查看into子句查询的结果,如图所示。
来源:http://blog.csdn.net/linqmail/article/details/2301730
加支付宝好友偷能量挖...