- 1、本文档共37页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 请演示 btnRepeatDemo_Click 中的代码 * 注意强调 所有的查询方法都存放在 System.Linq.Enumerable 静态类中; 必要时可以打开 MSDN 演示 Enumerable 类的定义 以及它的成员方法 以使学员更好地了解到 LINQ 的本质 * * 强调 LINQ 的实用性价值 * * * 是否应为“命名空间” 高级查询方法小结 请判断以下代码输出结果是什么? ListPerson foxRiver8 = GetFoxRiver8(); var q = from p in foxRiver8 orderby p.FirstName thenby p.LastName select p; foreach (var item in q) { Console.WriteLine(item); } 代码错误,查询语句中没有 thenby 关键字 LINQ to SQL 示例 下面我们利用已经学习的 LINQ 知识,做一个示例 显示“第三波书店”中所有书籍类型 根据用户选择的书籍类型显示书籍列表 提供分页功能: 首页 上一页 下一页 末页 页码选择 设计界面 关键步骤 新建 “ASP.NET Web Site” 项目 在 “Solution Explorer” 中依次选择 “Add New Item” - “Web Form” 为网页命名为 ListBooksByCategory.aspx 设计简单的用户界面,设计好后的界面如图所示 配置数据源 关键步骤 在 “Database Explorer” 中选择 “Add Connection”,并指定 MyBookShop 数据库 在 “Solution Explorer” 中依次选择 “Add New Item” - “LINQ to SQL Classes” 为dbml文件命名为 MyBookShop.dbml 展开数据源视图,把 MyBookShop 数据库中的表 Books, Categories, Publishers 拖到 LINQ to SQL 的设计器中 最终效果如图 编写代码 在 Page_Load 中编写代码进行初始化 private const int PAGE_SIZE = 20; MyBookShopDataContext db; protected void Page_Load(object sender, EventArgs e) { db = new MyBookShopDataContext(); } MyBookShopDataContext 类是由 LINQ to SQL自动生成的数据上下文类 位于 MyBookShop.dbml 文件中 总结 使用什么方法可以使查询在定义时就立即执行? 查询方法和查询语句是一一对应关系么? ThenBy 方法的主要作用是什么? 查询方法位于哪个名字空间下的哪个类中? Thank you! * * * 请演示 btnQueryStepsDemo_Click 中的代码 这个问题主要在于回顾上一章学习的 Lambda 表达式的语句体写法 同时为后续的查询时机讲解做一个引子 演示时,执行上述代码,事实上,什么结果也没有 但是 加入 以下代码后 foreach (var item in even) { } 程序却产生了输出? 为何呢 …… 引导大家一起思考 * 为了讲解延迟执行做铺垫 * * 请演示 QEvsQM 中的代码 注意说明大部分查询方法都有对应的查询语句 * 首先以提问的方式 引导学员阅读这段查询语句 并及时对学员进行鼓励和肯定 从而进一步说明查询语句的可读性好的道理。 请演示 btnQueryExpressionDemo2_Click 中的代码 可以提问 匿名类相关问题 以巩固前面学习的知识 * 非常重要的一页 PPT 对于学员理解 LINQ 的本质非常重要 * 在上节课,我们学习了基本的查询方法 这节课,我们学习更高级的查询方法 请参考 101 Samples /en-us/vcsharp/aa336746.aspx * * 请演示 btnCountDemo_Click 中的代码 也可以回顾前面查询时机部分的代码 * 请演示 btnMaxDemo_Click 中的代码 * 请演示 btnMinDemo_Click 中的代码 * 请演示 btnAverageDemo_Click 中的代码 * 请演示 btnSumDemo_Click 中的代码 * * 请演示 btnThenByDemo_Click 中的代码 注意在示例代码中添加了几个“怪人”以体现复合条件的查询效果 注意:ThenBy 对应的查询语句形式比较特别
文档评论(0)