Linq 入门系列 select篇

ccoderlh 2008-01-10 01:58:12
其实也是对网上linq--select篇的扩充
我在这里把两种语法都写,lambda,linq写法,方便大家更好的去学习,同时也增加了一些新的东西,如解释,例子的扩充。。。
今后一段时间,我会对linq一些基本写法进行例子和解释结合的方式和大家进行分享。


class Program
{
private static List<Student> GetStudents()
{
List<Student> students = new List<Student> {
new Student{ Name="YOUNG", Age=25, Language="Chinese"},
new Student{ Name="JESSIE", Age=21, Language="Scotland"},
new Student{ Name="KELLY", Age=18, Language="English"},
new Student{ Name="JUNE", Age=20, Language="English"},
new Student{ Name="ADRIAN", Age=22, Language="Italy"},
new Student{ Name="BRUCE", Age=17, Language="Scotland"},
new Student{ Name="BRANT", Age=30, Language="Germany"},
new Student{ Name="BEN", Age=25, Language="Chinese"}
};
return students;

}

static void Main(string[] args)
{
List<Student> studentList = GetStudents();

Select(studentList);
}

private static void Select<T>(T studentList)
{
OnlySearch(studentList);
SearchCollectChangeOtherCollect(studentList);
BuilderAnomy();
BuilderAnomyExter();
SelectLambda();
ComplexSelect();
ComplexSelectLambda();
}

private static void OnlySearch<T>(T studentList)
{
Console.WriteLine("<hr>只查询合适对象集合的某个属性:<br>");

//lamb的写法
var students = RevealChangeType(studentList).Where(n=>n.Language == "Chinese").Select(n=>n.Name);

//linq的写法
//var students = from n in RevealChangeType(studentList)
// where n.Language == "Chinese"
// select n.Name;

foreach (var student in students)
{
Console.WriteLine(string.Format("<span class='result'>{0}</span>", student));
}
}

private static IEnumerable<Student> RevealChangeType<T>(T obj)
{
IEnumerable<Student> student = obj as IEnumerable<Student>;

return student;
}

private static void SearchCollectChangeOtherCollect<T>(T obj)
{
Console.WriteLine("<hr>从一个集合中查询,转化到另外一个集合:<br>");

//age Array
int[] intArray ={ 25, 1, 4, 3 };

//lamb的写法
var students = intArray.SelectMany(n=>RevealChangeType(obj).Where(s=>s.Age == n));

//linq的写法
//var students = from s in RevealChangeType(obj)
// from n in intArray
// where s.Age == n
// select s;

foreach (var student in students)
{
Console.WriteLine(string.Format("<span class='result'>{0}</span>", student.Name));
}
}

private static void BuilderAnomy()
{
Console.WriteLine("<hr>构建匿名类型:<br>");

List<Student> studentList = GetStudents();
int[] intArray = { 3, 1, 6, 4 };

//lamb的写法
var stu = intArray.Select(n=>new { Id = n, Name = (studentList as List<Student>)[n].Name });

//linq的写法
//var stu = from n in intArray
// select new{Id = n,Name=(studentList as List<Student>)[n].Name};

foreach (var s in stu)
{
Console.WriteLine(string.Format("<div class='result'>id:{0};name:{1}</div>", s.Id, s.Name));
}
}

private static void BuilderAnomyExter()
{
Console.WriteLine("<hr>构建匿名类型2——扩展已有类:<br>");

List<Student> studentList = GetStudents();
int[] intArray = { 3, 1, 6, 4 };

//lamb的写法
var students = intArray.Select(n=>new { Id = n, studentList[n].Name, studentList[n].Age });

//linq的写法
//var students = from n in intArray
// select new {Id = n, studentList[n].Name, studentList[n].Age};

foreach (var student in students)
{
Console.WriteLine(string.Format("<div class='result'>id:{0}; name:{1}; age:{2}</div>", student.Id, student.Name, student.Age));
}
}

private static void SelectLambda()
{
Console.WriteLine("<hr>select的Lambda表达式:<br>");

List<Student> studentList = GetStudents();
int[] intArray = { 3, 1, 6, 4 };

//lamb的写法
var stu = intArray.Select(i=>new { Id = i, studentList[i].Name });

//linq的写法
//var stu = from i in intArray
// select new {Id = i, studentList[i].Name};

foreach (var student in stu)
{
Console.WriteLine(string.Format("<div class='result'>id:{0}; name:{1}</div>", student.Id, student.Name));
}
}

private static void ComplexSelect()
{
Console.WriteLine("<hr>复合选择:<br>");

List<Student> studentList = GetStudents();
string[] stringArray = { "Ajax", "Csharp", "Javascript", "Css Desige", "Asp.net", "Gis" };

//lamb的写法
//var stu = stringArray.Where(s=>s.Length > 8).SelectMany(s=>studentList.Where(str1=>str1.Age > 23).Select(str=>new { book = s, name = str.Name }));
var stu = studentList.Where(sl=>sl.Age > 23).SelectMany(sl=>stringArray.Where(s=>s.Length > 8).Select(s=>new { name = sl.Name, book = s }));

//linq的写法
//var stu = from sl in studentList
// where sl.Age > 23
// from s in stringArray
// where s.Length > 8
// select new {name = sl.Name, book = s};

foreach (var student in stu)
{
Console.WriteLine(string.Format("<div class='result'>{0} is studying {1}</div>", student.name, student.book));
}
}

private static void ComplexSelectLambda()
{
Console.WriteLine("<hr>多重选择的Lambda表达式:<br>");

List<Student> studentList = GetStudents();
string[] stringArray = { "Ajax", "Csharp", "Javascript", "Css Desige", "Asp.net", "Gis" };

//lamb的写法
//var stu = studentList.SelectMany(s=>stringArray.Select(str => s.Name + "has a book names " + str));

//linq的写法
var stu = from sl in studentList
from s in stringArray
select new {name=sl.Name,language=s};

foreach (var s in stu)
{
Console.WriteLine(string.Format("<div class='result'>{0}</div>", s));
}
}
}

sealed class Student
{
public int age;
public int Age
{
get { return age; }
set { age = value; }
}

private string name;
public string Name
{
get { return name; }
set { name = value; }
}

private string language;
public string Language
{
get { return language; }
set { language = value; }
}
}
...全文
12459 56 打赏 收藏 转发到动态 举报
写回复
用AI写文章
56 条回复
切换为时间正序
请发表友善的回复…
发表回复
crb0820101 2011-11-18
  • 打赏
  • 举报
回复
mark
crb0820101 2011-11-18
  • 打赏
  • 举报
回复
mark
q107770540 2011-11-18
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 blpig 的回复:]
类似于下面的查询语句用LINQ怎样写?
select * from FTable Where id in (@id)
[/Quote]
http://blog.csdn.net/q107770540/article/details/5387946
tianxueshan2010 2011-11-18
  • 打赏
  • 举报
回复
学习LINQ
雪狼孤竹 2009-09-26
  • 打赏
  • 举报
回复
LINQ确实是好东西,学习了!
chen_ya_ping 2009-07-29
  • 打赏
  • 举报
回复
楼主幸苦,学习一下。谢谢楼主分享
yanhuanghero 2009-07-25
  • 打赏
  • 举报
回复
jf
汉升软件 2008-06-07
  • 打赏
  • 举报
回复
LINQ是什么東東?
y51704545 2008-06-05
  • 打赏
  • 举报
回复
收藏
UltraBejing 2008-05-01
  • 打赏
  • 举报
回复
有问题请先GOOGLE,BAIDU
meiZiNick 2008-04-30
  • 打赏
  • 举报
回复
这个简单啊,网上搜一下就得到答案了.
BernardSun 2008-03-21
  • 打赏
  • 举报
回复
学习
凤影 2008-03-14
  • 打赏
  • 举报
回复
支持。
g012345678 2008-03-13
  • 打赏
  • 举报
回复
现在在网站在建设过程中用Linq来操作数据库的了?
wwch369 2008-03-13
  • 打赏
  • 举报
回复
两种很详细,lambda语法比linq写法更简单,学习!!
yuanmanguo 2008-03-13
  • 打赏
  • 举报
回复
up up
jimodushi 2008-03-13
  • 打赏
  • 举报
回复
学习!
rbwang 2008-03-13
  • 打赏
  • 举报
回复
学习学习。。。
priwilliam 2008-03-12
  • 打赏
  • 举报
回复
德国马克
wangdetian168 2008-03-11
  • 打赏
  • 举报
回复
收藏看看
加载更多回复(34)
清晰完整PDF版本,是我从网上买来的 共 150MB,分为13个分卷 在 CSDN 上只有我整个是清晰完整的 LINQ 入门及应用 .NET 2010 SQL LINQ入门及应用 11/13 原价:48.00元 作者:王的强,张晓娜,周静 编著 出版社:清华大学 出版日期:2009-5-1 ISBN:9787302200253 字数:661000 页码:427 -------------------------------------------------------------------------------- 本书介绍微软最前沿的数据查询编程技术,内容由160个知识点实例加5个综合应用案例组成,光盘中提供了涉及到的全部示例源程序项目,对于将要从事正规商业开发的人员有很强的示范性和指导作用。 内容提要 -------------------------------------------------------------------------------- 本书系统、全面地介绍了微软最新推出的LINQ数据开发技术。   本书采取以实践为主、以理论为辅的方法,首先对C#新改进的一些语法做了详细的剖析,让读者领会C#语法的新特点,为后面的学习打下基础,然后对LINQ各个子句和组件进行了实例讲解,通过一个个生动的示例,带领读者由浅入深、系统地学习和掌握LINQ技术。   本书对开发步骤的详细介绍,有助于读者更好地掌握Microsoft Visual Studio 2008开发环境。各个章节中的综合实例,除了充分演示LINQ技术外,还努力引导读者适应面向对象的开发方式。   配书光盘中提供了书中所有的源程序(均为VS2008应用项目),全部项目均经过严格的测试并通过。   本书可供相关技术研究人员、广大.NET应用程序开发人员和用户参考,也可作为高等院校计算机、电子商务以及信息类专业的教材。 目录 -------------------------------------------------------------------------------- 第1章 LINQ介绍  1.1 什么是LINQ  1.2 为什么要用LINQ  1.3 搭建LINQ开发环境   1.3.1 安装 Visual Studio 2008   1.3.2 配置 Visual Studio 2008  1.4 初识LINQ技术   1.4.1 初识LINQ to Objects   1.4.2 初识LINQ to ADO.NET   1.4.3 初识LINQ to XML  1.5 小结 第2章 C#语言的新特性及相关知识  2.1 .NET各个版本之间的关系  2.2 C#语言的新特性   2.2.1 自动属性和属性访问器的保护级别   2.2.2 可空类型   2.2.3 泛型   2.2.4 代理   2.2.5 迭代器与yield关键字   2.2.6 隐式类型的局部变量   2.2.7 对象和集合初始化器   2.2.8 匿名类型   2.2.9 扩展方法   2.2.10 匿名方法和Lamdba表达式  2.3 综合实例:C#高亮编辑及编译运行器  2.4 小结 第3章 LINQ基本子句介绍  3.1 概述  3.2 from子句   3.2.1 单个from子句   3.2.2 复合from子句   3.2.3 多个from子句  3.3 where子句   3.3.1 常见的where子句查询   3.3.2 在where子句中使用自定义函数   3.3.3 动态谓词的筛选  3.4 select子句   3.4.1 输出查询结果   3.4.2 对查询结果进行投影  3.5 group子句   3.5.1 IGrouping泛型接口   3.5.2 分组查询  3.6 into子句  3.7 排序子句   3.7.1 OrderBy和OrderByDescending   3.7.2 ThenBy和ThenByDescending  3.8 let子句  3.9 join子句  3.10 小结 第4章 用于集合、文件、字符串对象的LINQ(LINQ to Objects)  4.1 LINQ标准查询运算符概述  4.2 Enumerable类的介绍  4.3 用于延期执行的Enumerable类方法成员   4.3.1 Take方法   4.3.2 TakeWhile方法   4.3.3 Skip方法   4.3.4 SkipWhile方法   4.3.5 Take、TakeWhile、Skip、SkipWhile小结   4.3.6 Reverse方法   4.3.7 Distinct方法   4.3.8 Union方法   4.3.9 Concat方法   4.3.10 Intersect方法   4.3.11 Except方法   4.3.12 Range方法   4.3.13 Repeat方法   4.3.14 Empty方法   4.3.15 DefaultIfEmpty方法   4.3.16 Cast方法   4.3.17 OfType方法   4.3.18 AsEnumerable方法  4.4 用于立即执行的Enumerable类方法成员  4.5 综合实例  4.6 小结 第5章 用于数据库访问的LINQ (LINQ to SQL) 第6章 用于XML访问的LINQ (LINQ to XML) 第7章 综合应用实例:商品管理解决方案
清晰完整PDF版本,是我从网上买来的 共 150MB,分为13个分卷 在 CSDN 上只有我整个是清晰完整的 LINQ 入门及应用 .NET 2010 SQL LINQ入门及应用 8/13 原价:48.00元 作者:王的强,张晓娜,周静 编著 出版社:清华大学 出版日期:2009-5-1 ISBN:9787302200253 字数:661000 页码:427 -------------------------------------------------------------------------------- 本书介绍微软最前沿的数据查询编程技术,内容由160个知识点实例加5个综合应用案例组成,光盘中提供了涉及到的全部示例源程序项目,对于将要从事正规商业开发的人员有很强的示范性和指导作用。 内容提要 -------------------------------------------------------------------------------- 本书系统、全面地介绍了微软最新推出的LINQ数据开发技术。   本书采取以实践为主、以理论为辅的方法,首先对C#新改进的一些语法做了详细的剖析,让读者领会C#语法的新特点,为后面的学习打下基础,然后对LINQ各个子句和组件进行了实例讲解,通过一个个生动的示例,带领读者由浅入深、系统地学习和掌握LINQ技术。   本书对开发步骤的详细介绍,有助于读者更好地掌握Microsoft Visual Studio 2008开发环境。各个章节中的综合实例,除了充分演示LINQ技术外,还努力引导读者适应面向对象的开发方式。   配书光盘中提供了书中所有的源程序(均为VS2008应用项目),全部项目均经过严格的测试并通过。   本书可供相关技术研究人员、广大.NET应用程序开发人员和用户参考,也可作为高等院校计算机、电子商务以及信息类专业的教材。 目录 -------------------------------------------------------------------------------- 第1章 LINQ介绍  1.1 什么是LINQ  1.2 为什么要用LINQ  1.3 搭建LINQ开发环境   1.3.1 安装 Visual Studio 2008   1.3.2 配置 Visual Studio 2008  1.4 初识LINQ技术   1.4.1 初识LINQ to Objects   1.4.2 初识LINQ to ADO.NET   1.4.3 初识LINQ to XML  1.5 小结 第2章 C#语言的新特性及相关知识  2.1 .NET各个版本之间的关系  2.2 C#语言的新特性   2.2.1 自动属性和属性访问器的保护级别   2.2.2 可空类型   2.2.3 泛型   2.2.4 代理   2.2.5 迭代器与yield关键字   2.2.6 隐式类型的局部变量   2.2.7 对象和集合初始化器   2.2.8 匿名类型   2.2.9 扩展方法   2.2.10 匿名方法和Lamdba表达式  2.3 综合实例:C#高亮编辑及编译运行器  2.4 小结 第3章 LINQ基本子句介绍  3.1 概述  3.2 from子句   3.2.1 单个from子句   3.2.2 复合from子句   3.2.3 多个from子句  3.3 where子句   3.3.1 常见的where子句查询   3.3.2 在where子句中使用自定义函数   3.3.3 动态谓词的筛选  3.4 select子句   3.4.1 输出查询结果   3.4.2 对查询结果进行投影  3.5 group子句   3.5.1 IGrouping泛型接口   3.5.2 分组查询  3.6 into子句  3.7 排序子句   3.7.1 OrderBy和OrderByDescending   3.7.2 ThenBy和ThenByDescending  3.8 let子句  3.9 join子句  3.10 小结 第4章 用于集合、文件、字符串对象的LINQ(LINQ to Objects)  4.1 LINQ标准查询运算符概述  4.2 Enumerable类的介绍  4.3 用于延期执行的Enumerable类方法成员   4.3.1 Take方法   4.3.2 TakeWhile方法   4.3.3 Skip方法   4.3.4 SkipWhile方法   4.3.5 Take、TakeWhile、Skip、SkipWhile小结   4.3.6 Reverse方法   4.3.7 Distinct方法   4.3.8 Union方法   4.3.9 Concat方法   4.3.10 Intersect方法   4.3.11 Except方法   4.3.12 Range方法   4.3.13 Repeat方法   4.3.14 Empty方法   4.3.15 DefaultIfEmpty方法   4.3.16 Cast方法   4.3.17 OfType方法   4.3.18 AsEnumerable方法  4.4 用于立即执行的Enumerable类方法成员  4.5 综合实例  4.6 小结 第5章 用于数据库访问的LINQ (LINQ to SQL) 第6章 用于XML访问的LINQ (LINQ to XML) 第7章 综合应用实例:商品管理解决方案
清晰完整PDF版本,是我从网上买来的 共 150MB,分为13个分卷 在 CSDN 上只有我整个是清晰完整的 LINQ 入门及应用 .NET 2010 SQL LINQ入门及应用 1/13 原价:48.00元 作者:王的强,张晓娜,周静 编著 出版社:清华大学 出版日期:2009-5-1 ISBN:9787302200253 字数:661000 页码:427 -------------------------------------------------------------------------------- 本书介绍微软最前沿的数据查询编程技术,内容由160个知识点实例加5个综合应用案例组成,光盘中提供了涉及到的全部示例源程序项目,对于将要从事正规商业开发的人员有很强的示范性和指导作用。 内容提要 -------------------------------------------------------------------------------- 本书系统、全面地介绍了微软最新推出的LINQ数据开发技术。   本书采取以实践为主、以理论为辅的方法,首先对C#新改进的一些语法做了详细的剖析,让读者领会C#语法的新特点,为后面的学习打下基础,然后对LINQ各个子句和组件进行了实例讲解,通过一个个生动的示例,带领读者由浅入深、系统地学习和掌握LINQ技术。   本书对开发步骤的详细介绍,有助于读者更好地掌握Microsoft Visual Studio 2008开发环境。各个章节中的综合实例,除了充分演示LINQ技术外,还努力引导读者适应面向对象的开发方式。   配书光盘中提供了书中所有的源程序(均为VS2008应用项目),全部项目均经过严格的测试并通过。   本书可供相关技术研究人员、广大.NET应用程序开发人员和用户参考,也可作为高等院校计算机、电子商务以及信息类专业的教材。 目录 -------------------------------------------------------------------------------- 第1章 LINQ介绍  1.1 什么是LINQ  1.2 为什么要用LINQ  1.3 搭建LINQ开发环境   1.3.1 安装 Visual Studio 2008   1.3.2 配置 Visual Studio 2008  1.4 初识LINQ技术   1.4.1 初识LINQ to Objects   1.4.2 初识LINQ to ADO.NET   1.4.3 初识LINQ to XML  1.5 小结 第2章 C#语言的新特性及相关知识  2.1 .NET各个版本之间的关系  2.2 C#语言的新特性   2.2.1 自动属性和属性访问器的保护级别   2.2.2 可空类型   2.2.3 泛型   2.2.4 代理   2.2.5 迭代器与yield关键字   2.2.6 隐式类型的局部变量   2.2.7 对象和集合初始化器   2.2.8 匿名类型   2.2.9 扩展方法   2.2.10 匿名方法和Lamdba表达式  2.3 综合实例:C#高亮编辑及编译运行器  2.4 小结 第3章 LINQ基本子句介绍  3.1 概述  3.2 from子句   3.2.1 单个from子句   3.2.2 复合from子句   3.2.3 多个from子句  3.3 where子句   3.3.1 常见的where子句查询   3.3.2 在where子句中使用自定义函数   3.3.3 动态谓词的筛选  3.4 select子句   3.4.1 输出查询结果   3.4.2 对查询结果进行投影  3.5 group子句   3.5.1 IGrouping泛型接口   3.5.2 分组查询  3.6 into子句  3.7 排序子句   3.7.1 OrderBy和OrderByDescending   3.7.2 ThenBy和ThenByDescending  3.8 let子句  3.9 join子句  3.10 小结 第4章 用于集合、文件、字符串对象的LINQ(LINQ to Objects)  4.1 LINQ标准查询运算符概述  4.2 Enumerable类的介绍  4.3 用于延期执行的Enumerable类方法成员   4.3.1 Take方法   4.3.2 TakeWhile方法   4.3.3 Skip方法   4.3.4 SkipWhile方法   4.3.5 Take、TakeWhile、Skip、SkipWhile小结   4.3.6 Reverse方法   4.3.7 Distinct方法   4.3.8 Union方法   4.3.9 Concat方法   4.3.10 Intersect方法   4.3.11 Except方法   4.3.12 Range方法   4.3.13 Repeat方法   4.3.14 Empty方法   4.3.15 DefaultIfEmpty方法   4.3.16 Cast方法   4.3.17 OfType方法   4.3.18 AsEnumerable方法  4.4 用于立即执行的Enumerable类方法成员  4.5 综合实例  4.6 小结 第5章 用于数据库访问的LINQ (LINQ to SQL) 第6章 用于XML访问的LINQ (LINQ to XML) 第7章 综合应用实例:商品管理解决方案
清晰完整PDF版本,是我从网上买来的 共 150MB,分为13个分卷 在 CSDN 上只有我整个是清晰完整的 LINQ 入门及应用 .NET 2010 SQL LINQ入门及应用 3/13 原价:48.00元 作者:王的强,张晓娜,周静 编著 出版社:清华大学 出版日期:2009-5-1 ISBN:9787302200253 字数:661000 页码:427 -------------------------------------------------------------------------------- 本书介绍微软最前沿的数据查询编程技术,内容由160个知识点实例加5个综合应用案例组成,光盘中提供了涉及到的全部示例源程序项目,对于将要从事正规商业开发的人员有很强的示范性和指导作用。 内容提要 -------------------------------------------------------------------------------- 本书系统、全面地介绍了微软最新推出的LINQ数据开发技术。   本书采取以实践为主、以理论为辅的方法,首先对C#新改进的一些语法做了详细的剖析,让读者领会C#语法的新特点,为后面的学习打下基础,然后对LINQ各个子句和组件进行了实例讲解,通过一个个生动的示例,带领读者由浅入深、系统地学习和掌握LINQ技术。   本书对开发步骤的详细介绍,有助于读者更好地掌握Microsoft Visual Studio 2008开发环境。各个章节中的综合实例,除了充分演示LINQ技术外,还努力引导读者适应面向对象的开发方式。   配书光盘中提供了书中所有的源程序(均为VS2008应用项目),全部项目均经过严格的测试并通过。   本书可供相关技术研究人员、广大.NET应用程序开发人员和用户参考,也可作为高等院校计算机、电子商务以及信息类专业的教材。 目录 -------------------------------------------------------------------------------- 第1章 LINQ介绍  1.1 什么是LINQ  1.2 为什么要用LINQ  1.3 搭建LINQ开发环境   1.3.1 安装 Visual Studio 2008   1.3.2 配置 Visual Studio 2008  1.4 初识LINQ技术   1.4.1 初识LINQ to Objects   1.4.2 初识LINQ to ADO.NET   1.4.3 初识LINQ to XML  1.5 小结 第2章 C#语言的新特性及相关知识  2.1 .NET各个版本之间的关系  2.2 C#语言的新特性   2.2.1 自动属性和属性访问器的保护级别   2.2.2 可空类型   2.2.3 泛型   2.2.4 代理   2.2.5 迭代器与yield关键字   2.2.6 隐式类型的局部变量   2.2.7 对象和集合初始化器   2.2.8 匿名类型   2.2.9 扩展方法   2.2.10 匿名方法和Lamdba表达式  2.3 综合实例:C#高亮编辑及编译运行器  2.4 小结 第3章 LINQ基本子句介绍  3.1 概述  3.2 from子句   3.2.1 单个from子句   3.2.2 复合from子句   3.2.3 多个from子句  3.3 where子句   3.3.1 常见的where子句查询   3.3.2 在where子句中使用自定义函数   3.3.3 动态谓词的筛选  3.4 select子句   3.4.1 输出查询结果   3.4.2 对查询结果进行投影  3.5 group子句   3.5.1 IGrouping泛型接口   3.5.2 分组查询  3.6 into子句  3.7 排序子句   3.7.1 OrderBy和OrderByDescending   3.7.2 ThenBy和ThenByDescending  3.8 let子句  3.9 join子句  3.10 小结 第4章 用于集合、文件、字符串对象的LINQ(LINQ to Objects)  4.1 LINQ标准查询运算符概述  4.2 Enumerable类的介绍  4.3 用于延期执行的Enumerable类方法成员   4.3.1 Take方法   4.3.2 TakeWhile方法   4.3.3 Skip方法   4.3.4 SkipWhile方法   4.3.5 Take、TakeWhile、Skip、SkipWhile小结   4.3.6 Reverse方法   4.3.7 Distinct方法   4.3.8 Union方法   4.3.9 Concat方法   4.3.10 Intersect方法   4.3.11 Except方法   4.3.12 Range方法   4.3.13 Repeat方法   4.3.14 Empty方法   4.3.15 DefaultIfEmpty方法   4.3.16 Cast方法   4.3.17 OfType方法   4.3.18 AsEnumerable方法  4.4 用于立即执行的Enumerable类方法成员  4.5 综合实例  4.6 小结 第5章 用于数据库访问的LINQ (LINQ to SQL) 第6章 用于XML访问的LINQ (LINQ to XML) 第7章 综合应用实例:商品管理解决方案
清晰完整PDF版本,是我从网上买来的 共 150MB,分为13个分卷 在 CSDN 上只有我整个是清晰完整的 LINQ 入门及应用 .NET 2010 SQL LINQ入门及应用 10/13 原价:48.00元 作者:王的强,张晓娜,周静 编著 出版社:清华大学 出版日期:2009-5-1 ISBN:9787302200253 字数:661000 页码:427 -------------------------------------------------------------------------------- 本书介绍微软最前沿的数据查询编程技术,内容由160个知识点实例加5个综合应用案例组成,光盘中提供了涉及到的全部示例源程序项目,对于将要从事正规商业开发的人员有很强的示范性和指导作用。 内容提要 -------------------------------------------------------------------------------- 本书系统、全面地介绍了微软最新推出的LINQ数据开发技术。   本书采取以实践为主、以理论为辅的方法,首先对C#新改进的一些语法做了详细的剖析,让读者领会C#语法的新特点,为后面的学习打下基础,然后对LINQ各个子句和组件进行了实例讲解,通过一个个生动的示例,带领读者由浅入深、系统地学习和掌握LINQ技术。   本书对开发步骤的详细介绍,有助于读者更好地掌握Microsoft Visual Studio 2008开发环境。各个章节中的综合实例,除了充分演示LINQ技术外,还努力引导读者适应面向对象的开发方式。   配书光盘中提供了书中所有的源程序(均为VS2008应用项目),全部项目均经过严格的测试并通过。   本书可供相关技术研究人员、广大.NET应用程序开发人员和用户参考,也可作为高等院校计算机、电子商务以及信息类专业的教材。 目录 -------------------------------------------------------------------------------- 第1章 LINQ介绍  1.1 什么是LINQ  1.2 为什么要用LINQ  1.3 搭建LINQ开发环境   1.3.1 安装 Visual Studio 2008   1.3.2 配置 Visual Studio 2008  1.4 初识LINQ技术   1.4.1 初识LINQ to Objects   1.4.2 初识LINQ to ADO.NET   1.4.3 初识LINQ to XML  1.5 小结 第2章 C#语言的新特性及相关知识  2.1 .NET各个版本之间的关系  2.2 C#语言的新特性   2.2.1 自动属性和属性访问器的保护级别   2.2.2 可空类型   2.2.3 泛型   2.2.4 代理   2.2.5 迭代器与yield关键字   2.2.6 隐式类型的局部变量   2.2.7 对象和集合初始化器   2.2.8 匿名类型   2.2.9 扩展方法   2.2.10 匿名方法和Lamdba表达式  2.3 综合实例:C#高亮编辑及编译运行器  2.4 小结 第3章 LINQ基本子句介绍  3.1 概述  3.2 from子句   3.2.1 单个from子句   3.2.2 复合from子句   3.2.3 多个from子句  3.3 where子句   3.3.1 常见的where子句查询   3.3.2 在where子句中使用自定义函数   3.3.3 动态谓词的筛选  3.4 select子句   3.4.1 输出查询结果   3.4.2 对查询结果进行投影  3.5 group子句   3.5.1 IGrouping泛型接口   3.5.2 分组查询  3.6 into子句  3.7 排序子句   3.7.1 OrderBy和OrderByDescending   3.7.2 ThenBy和ThenByDescending  3.8 let子句  3.9 join子句  3.10 小结 第4章 用于集合、文件、字符串对象的LINQ(LINQ to Objects)  4.1 LINQ标准查询运算符概述  4.2 Enumerable类的介绍  4.3 用于延期执行的Enumerable类方法成员   4.3.1 Take方法   4.3.2 TakeWhile方法   4.3.3 Skip方法   4.3.4 SkipWhile方法   4.3.5 Take、TakeWhile、Skip、SkipWhile小结   4.3.6 Reverse方法   4.3.7 Distinct方法   4.3.8 Union方法   4.3.9 Concat方法   4.3.10 Intersect方法   4.3.11 Except方法   4.3.12 Range方法   4.3.13 Repeat方法   4.3.14 Empty方法   4.3.15 DefaultIfEmpty方法   4.3.16 Cast方法   4.3.17 OfType方法   4.3.18 AsEnumerable方法  4.4 用于立即执行的Enumerable类方法成员  4.5 综合实例  4.6 小结 第5章 用于数据库访问的LINQ (LINQ to SQL) 第6章 用于XML访问的LINQ (LINQ to XML) 第7章 综合应用实例:商品管理解决方案

8,497

社区成员

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

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