版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第9章 ASP.NET数据访问08 七月 20222Ch9 ASP.NET数据访问9.1 LINQ基本技术9.2 ASP.NET数据绑定9.3 利用实体框架访问数据库08 七月 202239.1 LINQ基本技术语言集成查询(LINQ)CSS是Cascading Style Sheets的缩写,称为级联样式表,也叫层叠式样式表。CSS的作用是控制HTML元素在浏览器中呈现的样式,比如字体大小、颜色、背景色以及背景图像等。CSS的级联控制内联式(Inline Styles) 嵌入式(Embedding a Style Block)外部链接式(Linking to a Style Sheet) 内
2、联式(Inline Styles)内联式是指直接在HTML元素内通过style属性设置元素的样式每个style内可以包含一个或多个样式属性,其一般形式为:style=属性名1: 值1; 属性名2: 值2; “属性名与属性值之间用冒号“:”分隔,如果一个样式中有多个属性,各属性之间用分号“;”隔开。 例如:定义了带样式的层内联式适用于单独控制某个元素样式的情况。优点是设置样式直观、方便 ;缺点是无法一次性设置所有相同元素的样式 。一般情况下,如果某个元素的样式与其他元素的样式不同,或者具有相同样式的元素比较少,可以采用内联式。 08 七月 202259.1 LINQ基本技术语言集成查询(LINQ
3、)语言集成查询(LINQ)在对象领域和数据领域之间架起了一座桥梁,其最大特点是可以直接使用C#语法访问各种数据源。LINQ技术包括以下几个方面。(1)LINQ to Entities:将实体数据模型作为对象,然后再通过实体模型访问各种数据源。(2)LINQ to SQL:将关系数据库的数据作为对象。(3)LINQ to XML:用LINQ语法对XML文档进行各种操作。(4)LINQ to DataSet:将LINQ查询结果直接保存到DataSet中。(5)LINQ to Objects:查询任何可枚举的集合。08 七月 202269.1 LINQ基本技术语言集成查询(LINQ)使用LINQ技术
4、可带来以下优点。(1)语法与数据库的SQL查询语句类似。(2)针对语法错误和类型安全的编译时检查。(3)改进的调试器支持。(4)编写程序时的IntelliSense(智能提示)支持。(5)直接处理XML元素的功能,而不是像W3C的DOM那样需要创建容器XML文档。(6)强大的内存中XML文档修改功能,比XPath或XQuery更容易使用。(7)强大的筛选、排序和分组功能。(8)用于跨多种数据源和数据格式处理数据的一致模型。08 七月 202279.1 LINQ基本技术查询表达式LINQ查询表达式主要由from子句、let子句、orderby子句、where子句、group子句以及select子
5、句构成。每一个LINQ查询表达式都必须包含from子句,且必须以from子句开头,以 select 或 group 子句结尾,使用from语句的主要作用是为了智能感知,使编译器了解该语句为LINQ查询表达式。如果LINQ查询表达式还包含子查询,那么子查询表达式也必须以from子句开头。08 七月 202289.1 LINQ基本技术from子句from子句指定要查找的数据源以及范围,多个from子句则表示从多个数据源查找数据。from子句的一般格式为:from in 【例9-1】演示from子句的基本用法。Where子句在LINQ中,用where子句指定查询的过滤条件。【例9-2】演示where
6、子句的基本用法。08 七月 202299.1 LINQ基本技术group子句group子句实现对查询结果的分组操作。一般格式为:group by 【例9-3】演示group子句的基本用法。let子句使用let变量可以创建一个新的变量,并且使用该变量保存表达式中的结果。 【例9-4】演示let子句的基本用法。08 七月 2022109.1 LINQ基本技术orderby子句orderby子句对查询结果进行排序操作,格式如下:orderby element sortType其中,element是要进行排序的字段。sortType是可选参数,表示排序类型,包括升序(ascending)和降序(des
7、ending)两个可选值,默认为ascending。 【例9-5】演示orderby子句的基本用法。select子句select子句指定在执行查询时产生结果的数据集中元素的类型。 08 七月 2022119.1 LINQ基本技术Lambda表达式Lambda表达式是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式目录树类型。当函数语句较少,而又需要用委托来调用时,使用Lambda表达式比较方便。所有Lambda表达式都使用Lambda运算符“=”,读为“goes to”,运算符的右边包含一条或多条表达式或语句块。如果表达式有输入参数,则将参数放在运算符的左边。例如:x = x
8、* x每一个LINQ查询表达式都必须包含from子句,且必须以from子句开头,以 select 或 group 子句结尾,使用from语句的主要作用是为了智能感知,使编译器了解该语句为LINQ查询表达式。如果LINQ查询表达式还包含子查询,那么子查询表达式也必须以from子句开头。08 七月 2022129.1 LINQ基本技术Lambda表达式Lambda表达式的一般规则如下: (1)表达式中的参数数量必须与委托类型包含的参数数量相同。 (2)表达式中的每个输入参数必须都能够隐式转换为其对应的委托参数。(3)如果表达式有返回值,该返回值必须能够隐式转换为委托的返回类型。【例9-6】演示La
9、mbda表达式的基本用法。每一个LINQ查询表达式都必须包含from子句,且必须以from子句开头,以 select 或 group 子句结尾,使用from语句的主要作用是为了智能感知,使编译器了解该语句为LINQ查询表达式。如果LINQ查询表达式还包含子查询,那么子查询表达式也必须以from子句开头。08 七月 2022139.2 ASP.NET数据绑定ASP.NET数据绑定经过两个环节,第一个环节是通过数据源控件(例如EntityDataSource控件、LinqDataSource控件等)自动获取或存储数据源中的数据;第二个环节是将数据源控件和其他控件绑定在一起,被绑定的其他控件称为AS
10、P.NET数据绑定控件。ASP.NET数据绑定控件的最大特点是可以自动生成代码,而且使用简单、直观。利用数据绑定控件可以进行如下操作。(1)选择和显示数据。 (2)对数据进行排序、分页和缓存。 (3)更新、插入和删除数据。 (4)使用运行时参数筛选数据 (5)使用参数创建“主/详细信息”方案。08 七月 2022149.2 ASP.NET数据绑定数据绑定表达式数据绑定是指把数据源中的数据取出来,显示在页面的各种控件上,用户可以通过这些控件查看和修改数据,这些修改会自动地保存到数据源中。数据绑定表达式包含在“”分隔符之内,格式如下:使用数据绑定表达式的主要内容如下。(1)在数据绑定表达式中,可以
11、指定被绑定的public类型的字段或属性。(2)在后台代码中调用Page类的DataBind方法时,ASP.NET会自动计算所有数据绑定表达式的值。(3)数据绑定表达式也可以用在服务器控件属性中,包括HTML服务器控件和Web服务器控件,格式如下:控件名 属性= runat=server / 【例9-7】演示数据绑定表达式的基本用法08 七月 2022159.2 ASP.NET数据绑定将数据源绑定到控件利用数据绑定技术可以绑定具有单一值的控件、列表控件以及模板化控件。绑定列表控件列表控件用于以各种列表形式呈现数据,包括ListBox、DropDownList、CheckBoxList、Radi
12、oButtonList和BulletedList控件。当需要将数据源数据以列表形式显示时,可以用数据绑定来实现,此时控件中的每一项对应于数据源中的一项(例如数据库表中的一行)。利用列表控件可以显示来自数据源的一个字段,也可以用另一个字段作为项的值。【例9-8】利用数据绑定将Course表的课程名称显示在ListBox中,当选择某个课程名称时,保存对应的编码。【例9-9】在代码隐藏类中直接编写代码实现与ListBox控件绑定。08 七月 2022169.2 ASP.NET数据绑定将数据源绑定到控件绑定模板化控件在数据绑定表达式中,使用Eval方法实现单向绑定,使用Bind方法实现双向数据绑定。(
13、1)Eval方法Eval方法用于定义单向(只读)绑定,该方法将数据字段的值作为参数,返回字符串形式的值。(2)Bind方法Bind方法用于定义双向(可更新)绑定,该方法可以检索数据绑定控件的值,并将更改提交给数据库。注意:只能对数据绑定控件的模板内的绑定使用Eval方法和Bind方法。出于性能的考虑,除非是绑定需要格式化字符串,一般使用bind方法。08 七月 2022179.3 利用实体框架访问数据库ADO.NET Entity Framework(简称EF)是微软推出的数据访问架构。实体框架基本概念使用Entity Framework,可以方便地访问SQL Server、Oracle、DB
14、2等大型数据库。另外,将语言集成查询(LINQ)和实体框架相结合,能使我们快速开发出各种数据访问相关的应用程序。08 七月 2022189.3 利用实体框架访问数据库实体框架基本概念Entity Framework具有以下优点。(1)应用程序可以通过更加以应用程序为中心的概念模型(包括具有继承性、复杂成员和关系的类型)来工作。(2)应用程序不再对特定的数据引擎或存储架构具有硬编码依赖性。(3)可以在不更改应用程序代码的情况下更改概念模型与特定于存储的架构之间的映射。(4)开发人员可以使用可映射到各种存储架构(可能在不同的数据库管理系统中实现)的一致的应用程序对象模型。(5)多个概念模型可以映射
15、到同一个存储架构。08 七月 2022199.3 利用实体框架访问数据库创建数据库和实体数据模型本章的例子使用SQL Server 2008 Express来讲解【例9-10】在项目中创建MyDatabase.mdf数据库,然后使用“ADO.NET实体数据模型”向导生成MyDatabaseModel.edmx文件。即实现MyDatabaseModel概念模型和MyDatabase数据库(表、视图以及存储过程)之间的映射。08 七月 2022209.3 利用实体框架访问数据库GridView控件常用属性08 七月 2022219.3 利用实体框架访问数据库GridView控件常用事件【例9-11】在GridView控件中显示课程编码对照表的数据。08 七月 2022229.3 利用实体框架访问数据库EntityDataSource控件数据源控件为数据绑定控件构造了一个公共接口,其内部自动实现丰富的数据检索和修改功能,包括查询、排序、分页、筛选、更新、删除以及插入等,而不需要开发人员去编写针对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 食品安全领域内部责任追究制度落实
- 2024年春七年级地理下册 第6章 第2节 自然环境教案2 (新版)新人教版
- 机械 专业 课程设计
- 机床电主轴课程设计
- 2024年中东市场进入合同
- 机床变速箱齿轮课程设计
- 机场供配电系统课程设计
- 机器人控制原理课程设计
- 充电桩与可再生能源整合方案
- 本科的课程设计
- 危险化学品企业安全风险智能化管控平台建设指南(试行)
- 亚龙YL-335B实训项目书
- 钢管落地卸料平台
- 耐热钢的选用
- 日语授受关系PPT演示课件
- 殡仪服务试题——
- 浅析全面深化改革的背景和特点
- 骨龄及其测评方法
- (完整版)初三化学计算题专题练习题
- 2010年度重庆市高等学校精品课程申报表 高电压技术
- 中日英刀具照表
评论
0/150
提交评论