.NET基础学习(LINQ)(2)

来源:未知 责任编辑:责任编辑 发表时间:2015-01-01 13:18 点击:

 \

 

2、join子句

LINQ中的join子句和SQL中的join很相似,连接操作接受两个集合然后创建一个临时的对象集合,每个对象包含原始集合对象中的所有字段,使用连接来结合两个或更多个集合中的数据。
示例代码如下:

 1  public class Student
 2  {
 3     public int StID;
 4     public string LastName;
 5  }
 6  public class CourseStudent
 7  {
 8     public string CourseName;
 9     public int StID;
10  }
11
12  CourseStudent[] studentInCourses = new CourseStudent[]{
13                  new CourseStudent{CourseName="Art",StID=1},
14                  new CourseStudent{CourseName="Art",StID=3},
15                  new CourseStudent{CourseName="History",StID=1},
16                  new CourseStudent{CourseName="History",StID=2},
17                  new CourseStudent{CourseName="Physics",StID=3}
18                 };
19  Student[] students = new Student[] {
20            new Student{StID=1,LastName="张三"},
21            new Student{StID=2,LastName="李四"},
22            new Student{StID=3,LastName="王五"}
23            };
24
25  //获取选修2门课以上同学的名字
26  var query = (from s in students
27               join c in studentInCourses on s.StID equals c.StID
28               where (from x in studentInCourses where x.StID==c.StID select x.StID).Count()>1
29               select s.LastName).Distinct();
30  foreach (var v in query) Console.Write("{0}\t",v);
31  Console.WriteLine("");
32             //获取选修历史同学的名字
33  var query1 = from s in students

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • 浅析.NET下XML数据访问新机制
  • asp.net 面试+笔试题目第1/2页
  • C# 邮件地址是否合法的验证
  • asp.net 设置GridView的选中行的实现代码
  • C#高级编程:数据库连接[1]
  • 经典C++程序1
  • IIS 自动回收导致后台定时器失效的问题解决
  • ASP.NET GridView列表代码示例
  • Asp.net MVC源码分析--Action Filter的链式调用
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1