Entity Framework5学习笔记】的更多相关文章

主要 是学习DbContext http://zzk.cnblogs.com/s?w=DbContext&t=b…
上期回顾:Entity Framework 学习笔记(1) Entity Framework最主要的东西,就是自己创建的.继承于DbContext的类: /// <summary> /// Context相当于一个数据库 /// </summary> public class MusicContext : DbContext { //base("LocalDB")表示要用到config文件中的名为"LcoalDB"的连接字符串 public…
原文地址:http://www.cnblogs.com/frankofgdc/p/3600090.html Entity Framework学习笔记——错误汇总   之前的小项目做完了,到了总结经验和更新学习笔记的时间了.开始正题之前先啰嗦一下,对之前的学习目标进行一个调整:“根据代码生成表”与“生成数据库脚本和变更脚本”合并为“Code First模式日常使用篇”,增加现在这篇“错误汇总”,增加“Code First模式与其他模式混合使用与Fluent API篇”,“生成视图”因为这次在项目中…
ADO.NET Entity Framework学习笔记(3)ObjectContext对象[转]   说明 ObjectContext提供了管理数据的功能 Context操作数据 AddObject 添加实体 将实体添加到集合中, 创建实体时,状态为EntityState.Detached 当调用AddObject将实体添加到Context时,状态为EntityState.Added myContext context = new myContext(); myTab r = new myTa…
### Programming Entity Framework-dbContext 学习笔记 第五章 将图表添加到Context中的方式及容易出现的错误 方法 结果 警告 Add Root 图标中的所有实体将被跟踪,并标记为Added SaveChage 将试图将所有实体插入数据库,即使数据库中已存在该实体 Attach Root 所有实体将被跟踪并标记为Unchanged 新添加的实体将不会被插入数据库,并容易造成主键冲突 Add or Attach Root,then paint stat…
之前的小项目做完了,到了总结经验和更新学习笔记的时间了.开始正题之前先啰嗦一下,对之前的学习目标进行一个调整:“根据代码生成表”与“生成数据库脚本和变更脚本”合并为“Code First模式日常使用篇”,增加现在这篇“错误汇总”,增加“Code First模式与其他模式混合使用与Fluent API篇”,“生成视图”因为这次在项目中没有使用,最后研究后再写出来.通过项目实战,觉得EF并不像之前想象中的这么容易上手.问题不是EF设计的不好,EF使用起来其实相当便捷,多数数据库操作一两行代码就能搞定…
继续之前设定的学习目标前,先来一篇小小的外篇.按照第一篇里的配置方式配置好的工程前两天还能正常工作,昨天却突然无法通过Add-Migration命令进行数据库的升级.错误信息如下: System.Data.Entity.Core.ProviderIncompatibleException: 从数据库中获取提供程序信息时出错.这可能是 Entity Framework 使用的连接字符串不正确导致的.有关详细信息,请查看内部异常并确保连接字符串正确. ---> System.Data.Entity.…
初次使用Entity Framework(以下简称EF),为了避免很快忘记,决定开日志记录学习过程和遇到的问题.因为项目比较小,只会用到EF的一些基本功能,因此先在此处制定一个学习目标:1. 配置EF(指定EF用哪个数据库,相信在大部分开发过程中都不会使用官方Demo中的LocalDb)2. 根据代码生成表(主要是一些特殊情况,比如希望自己设置string类型属性的长度,不想统一都是nvarchar(max))3. 生成视图(部分类其实希望生成成为视图,这样可以让数据库表设计更加符合范式,同时简…
请注明转载地址:http://www.cnblogs.com/arhat 从本章开始,老魏就介绍一下Entity Framework使用Linq来查询数据,也就是Linq To Entity.其实在Entity Framework中提供了3中查询方式,除了使用Linq还有Lambda表达式,EQL语句,其中EQL是用于复杂的查询,当Linq无法胜任的时候就要使用了EQL了,当然也可以使用存储过程.废话不多说,开始本章的内容. 在本章中查询的依然是Student和Clazz两张表,主要涉及到是单表…
请注明转载地址:http://www.cnblogs.com/arhat 昨天晚上老魏配的机器终于到了,可是拿回来之后什么都组装好了,唯独差一个非常重要的组件"电源线",老魏那个汗啊.于是从朋友那里借来一根电源线终于折腾到凌晨两点多才把所有的软件和系统装好,今天早上顺便装了一个MAC(嘻嘻).最让老魏兴奋的是换了VS2013,在使用VS2013的时候感觉非常的不错,对EF的支持真的是大大的增强了,不用再跑到网上找这个插件那个插件的,直接通过T4文件来生成Context是实体类了.那么今…
请注明转载地址:http://www.cnblogs.com/arhat 这篇文章老魏和大家分享一下Entity Framework的CRUD操作,在这之前呢,老魏先说一下老魏对EF的一个整体的认识,当然如果有不对的地方希望大家能够提出来,我们来一起的讨论一下. 老魏在经历了NHibernate这个ORM框架之后接触了EF这个在.NET平台上迟来的自家的ORM框架,从整体上看,其实这两个ORM框架的思想倒是很多是一样的,但是在使用了EF后,再发现有很多的操作比起NHibernate要强了不少,但…
请注明转载地址:http://www.cnblogs.com/arhat 哈哈!老魏回来了,4月份的内容开始更新了,由于3月份时间都在做项目,没有时间写了,那么4月份老魏会尽可能的多写点东西的.那么4月份的内容主要是EF和Linq了.至于NHibernate没有更新完,后面有时间的话老魏会更新的. 一.EF简介 EF的全称是Entity Framework,是微软推出的一款ORM框架,和Nhibernate的作用是一样的,但是出自微软之手那么肯定在兼容性上要非常的到家.虽然EF是个迟来的产品,但…
请注明转载地址:http://www.cnblogs.com/arhat 在上一章中,我们使用了Linq对Entity Framework进行了一个查询,但是通过学习我们却发现了懒加载给我来的性能上的开销是很到的,尤其是在循环中,如果数据量不是很多的情况下还可以接受,如果数据量一旦大气来,那么这个效率则是影响非常大的.那该怎么办呢?其实在Entity Framwork中,除了提供了懒加载技术还提供了一个“贪婪加载”.那么什么是贪婪加载呢?从名字上看,就是非常的粗鲁的,一次性的吧相关的数据全部查询…
开始从头系统地学习Entity Framework,当前的稳定版本为6.1.3,Nuget主页 http://www.nuget.org/packages/EntityFramework/ 微软喜欢把Entity Framework和ASP.NET MVC放在一起来用,从Entity Framework的主页的所有者就可以看出来 当然,这两者也是紧密的结合在一起的,"新一代"Web开发框架和"新一代"的数据库ORM框架,结合起来用确实很舒服,和WebForm开发有很…
学习描述:用EF就像是省略了做实体类和DAL类,感觉是很方便,废话不多说,直接写步骤: 1.创建EF的edmx文件 这个其实在笔记1已说过,不过有些细节也要说,所以再说一遍,这里使用的是EF 6.1版本的. 建了个商品表,创建文件之前,要有一个数据表,我在本地建个xitong数据库,建了个商品表,如下: CREATE TABLE [dbo].[xt_product]( ,) NOT NULL, ) COLLATE Chinese_PRC_CI_AS NULL, ) COLLATE Chinese…
1.自定义数据库链接字符串上下文 public class PetDbContext : DbContext { public PetDbContext() : base("name=DemoDB") { } public DbSet<Dog> Dogs { get; set; } } 2.Code First 模型迁移相关命令 Enable-Migrations 启用模型迁移,会自动建立Migrations文件夹,里面记录模型修改历史 Add-Migration AddT…
请注明转载地址:http://www.cnblogs.com/arhat 在前几章中,老魏一直使用Linq来查询Entity Framework.但是老魏感觉,如果使用Linq的话,那么Linq的返回值类型有的时候不是很容易找出来,没有直接使用Lambda来的直观,至少在Lambda中我们可以指定返回的类型,这样一来就可以指定返回值了. 在本章的开始呢,老魏先复习一下.NET提供的几个常用的Lambda委托,而这些委托可以说是经常又得到的,尤其实在IEnumerable<T>和 IQuerya…
1.通过 VS2013 下载,这个没有限制,因为我用的vs是2013 Entity Framework包…
Proxy 类代理类是为了让EF实现lazy load才需要的 public class BloggingContext : DbContext {     public BloggingContext()     {         this.Configuration.ProxyCreationEnabled = false;     }   }这样就可以关掉了. using (var context = new BloggingContext()) {     var blog = con…
EF 6 支持Enum 的处理 首先说一下 mysql 和 sql server 的区别 mysql 是有 Enum 这个类型的 , insert 时是放入 int , 出来的时候它会是 string (int to str 是设定在 mysql 内的) mssql 不支持 Enum 这个类型,也不好模拟. (有人用 check constraint 来模拟,我觉得不太理想) 入题, sql 应该使用 int. EF 对 Enum 会自行替换成 int ,我们就是要 Enum 就好 Json.n…
一.First Demo…
关于Entity Framework  数据模型 的开发有三种模式:1.引用数据库方式:2.在VS中新建EF空模型Model 方式:3.Code 方式 Entity Framework  数据模型  引用"引用数据库方式"进行开发创建的使用,具体如下: 开发环境:VS2012 数据库:SQL Server 2008 Entity Framework  版本:6.12 1.新建数据库 在数据库中新建数据库,并创建数据表,以下截图只供参考: 2.新建项目 在VS中新建一个控制台应用程序 F…
Entity Framework  数据模型 Model 创建的使用: 开发环境:VS2012 数据库:SQL Server 2008 Entity Framework  版本:6.12 下面是新建的项目架构:(当然这是我的项目架构,只是参考) 1. 新建项目 新建一个控制台项目即可 :Future.LifeWillBetter.DAL.ForModel.ConsoleApplication 如图: 2.新建数据模型 右键点击Future.LifeWillBetter.DAL.ForModel.…
如果我们想在子查询做过滤的话应该怎样写呢? IEnumerable<Product> products = db.products.Include(p => p.colors.Where(c => c.id == )).ToList(); product - color , 1-n 可能你以为是这样,但是结果是 error : "The Include path expression must refer to a navigation property defined…
解决方法:我本来也没有,百度了一下,在C:\ProgramData\Package Cache\{08AEF86A-1956-4846-B906-B01350E96E30}v12.0.20912.0\packages\EFTools,运行后点Repaire,如果没找到,就在Package Cache里搜索EFTools. 然后找EF:在项目里添加 - 新建项 - 数据 - ADO.NET实体数据模型 ,就是EF了. 网上还有种安装方法,在VS工具里,点工具 - NuGet程序管理器 里面找,不过…
MSDN: http://msdn.microsoft.com/en-us/data/aa937723 台湾博客: http://www.dotblogs.com.tw/yc421206/ http://www.dotblogs.com.tw/terrychuang/archive/2013/03/25/98832.aspx Entity Framework 5.0系列 http://www.cnblogs.com/kenshincui/category/511593.html Entity F…
MSDN: http://msdn.microsoft.com/en-us/data/aa937723 台湾博客: http://www.dotblogs.com.tw/yc421206/ http://www.dotblogs.com.tw/terrychuang/archive/2013/03/25/98832.aspx Entity Framework 5.0系列 http://www.cnblogs.com/kenshincui/category/511593.html Entity F…
前言 通过 “Entity Framework 6 学习笔记1 — 介绍和安装方法”文章我相信大家对EF的安装应该没什么问题了,整体安装还是比较简单的,只需要通过Nuge搜索EF然后安装就可以了,这也体现了微软一贯原则–“简单”. 安装完了我想很多朋友也着急想体验下EF的好处了吧,今天我就通过EF框架对增.删.改操作做一个简单示例. 创建表 这里我只是做示例所以就创建了一个表并且字段也很少.下面是sql语句,大家可以直接复制生成表结构.   CREATE TABLE Book   (   Id…
上一篇我们梳理了CodeFist的一般流程,本篇我们讨论如何在一套代码中,支持SQL Server和SQLite的切换.同时从本篇开始,我们从.NET Core 3.1 迁移到.NET 5.相信.NET 到了5这个版本,所有人都不会再怀疑某软跨平台的决心.而且SQL Server也从2017版本开始支持Linux.但是我相信在Linux上使用Visual Stuido Code时,搭配SQLite更能体现某软现任CEO崽卖爷田不心疼的精神.SQLite是非常常见的数据库,最大的特点就是零部署,以…
  1. 问题描述 最近新建了一个post事件的插件,传入的参数处理如下: 1: if (context.InputParameters.Contains("Target") && context.InputParameters["Target"] is Entity) 2: { 3: Entity entity = (Entity)context.InputParameters["Target"]; 4: - 5: 6: } 7…