1、为什么使用EF执行SQL语句? 1)进行复杂的查询时,直接使用EF执行SQL语句性能会优于使用LINQ自动生成查询语句。 2)某些特殊的查询条件,LINQ无法自动生成查询语句。 2、数据上下文DbContext的Database的属性: 1)ExecuteSqlCommand()不返回结果、只返回受影响的行数,适用于执行创建、插入、更新、删除操作(即执行给定的DDL/DML命令)。 2)SqlQuery()返回查询到的结果、并将结果保存在数据实体中,适用于执行查询操作。 二、EF执行SQL语句(二) 1、SqlQuery()使用前需要指定返回值的类型。 1)返回值类型可以是定义的实体类型,或者基元类型。 2、EF调用存储过程 1)在创建实体数据模型,或从数据库更新模型时,选择“存储过程和函数” 2)在模型浏览器中,编辑导入函数 三、Code First 1、步骤: 1)创建应用程序。 2)选择模型内容为“空Code First模型”。(可选) 3)在Models文件夹上右击选择新建类,并命名为User。 4)继续创建Order类后创建数据上下文类MeixinContext。 5)在配置文件中添加连接字符串。 6)编写数据访问代码。 7)打开SQLServer查看效果。 2、Code First检测到数据库和模型两者不匹配时,数据库将被删除并重建以满足匹配关系。 1)可以使用Database.SetInitializer方法来实现这一效果: 四、主从表查询 1、EF提供了三种方式加载从表数据: 1)延迟加载:只在需要的时候加载相关表数据。加载主从表数据需要多次访问数据库。 2)贪婪加载:当主表实体加载时,相关联的从表数据通过连接查询也一同被加载。加载主从表数据只需要一次访问数据库 3)显式加载:类似于延迟加载,但在访问导航属性时不会出现自动加载,需要手动显式指定加载哪个主表对象相关联的从表数据。加载主从表数据也需要多次访问数据库,但由于不是加载全部从表数据,因此访问数据库次数少于延迟加载。
一、EF执行SQL语句(一)
Database.SetInitializer( new DropCreateDatabaseIfModelChanges<MeixinContext>());
小剧场:如果可以?不,不可以…
英文版:If possible?No,No…
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算