首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Entity Framework Core 2.0 新特性

前言 Entity Framework Core 2.0更新也已经有一段时间了,园子里也有不少文章.. 看了下2.0新特性基本算是完成了我之前发布路线图内容 很不错 下面就介绍一下新特性....使用表拆分识别关系(其中外键属性形成主键)必须在共享表所有实体类型之间进行配置: modelBuilder.Entity() .HasOne(e => e.Details)....使用所属类型与EF6中使用复杂类型类似,(PS:这里解释一下EF6中复杂类型,复杂类型是允许在实体中组织标量属性实体类型非标量属性。像实体一样,复杂类型由标量属性或其他复杂类型属性组成。)...这些过滤器自动应用于涉及这些实体类型任何LINQ查询,包括间接引用实体类型,例如通过使用Include或直接导航属性引用。...在EF2.0,我们增加了对插值字符串中特殊支持,我们接受原始SQL字符串两个主要API:FromSql和ExecuteSqlCommand。

3.8K90

Entity Framework 简单增删改操作

前言  在 Entity Framework 简单查询操作 中主要是学习了在Entity Framework几种不同模式查询操作,现在主要来学习一下简单增加、删除、修改操作。...此外,在含有导航属性时,将一个对象赋值给另一个对象导航属性也能达到添加效果(当导航属性为”DbSet“集合时通过调用导航属性“Add()“方法也同样可以达到添加效果)。...删除  现在来看一下Entity Framework删除操作 using (var db = new EFContext()) {...修改 修改数据很简单,直接修改对应属性即可: using (var db = new EFContext()) { var...,EF在执行修改操作前会检查哪些属性发生了变化,并且只会修改发生变化字段。

72331

Entity Framework 系统约定配置

Entity Framework 默认约定 1.将数据类类名复数形式作为数据表名称,并且使用“dbo”作为默认架构。   ...3.使用导航属性约束两个表之间关系,在从表数据类中除了导航属性,推荐定义一个外键属性在从表数据类中(如果不指定将默认生成一个“+”外键列;此外在主表中推荐定义一个集合从表属性用户导航...,当然这个属性不定义也可以正常生成外键关系但是不利于使用),具体规则:“+”或者“+”又或者“”,其属性名不区分大小写并且如果出现多种匹配按照先后顺序匹配...;如果不存在外键属性则外键关系注册为可选,否则注册为必选项并且此时将设置级联删除关系;如果在从表类中有多个导航属性对应同一个数据类那么需要使用fluent API或者Data Annotations进行手动配置...Entity Framework 手动定义约定  EF默认约定不是一成不变,我们可以选择移除和修改它,例如EF默认生成数据表时将数据类名复数形式作为表名,下面的代码就可以移除这个规则: using

81820

Entity Framework 4 POCO学习

Entity Framework 4特性介绍可看这篇文章 .NET 4中Entity Framework简介,其中最感兴趣一点就是对POCO支持了:EF4为实体提供了简单传统CLR对象(Plain...同时,EF仍旧可以帮助跟踪POCO实体变化,允许延迟加载,也会自动修正对导航属性(navigation properties)和外键改动。...Entity Framework 1.0 发布了很长一段时间了,但感觉用的人很少。...其中一个很大原因,也许就是不支持POCO,至少我自己是这么想而不使用EF1Entity Framework 4.0版本(又称EF V2)将提供POCO支持,对很多人来说,这是开始使用Entity...Entity Framework 4.0 引入了基于约定(convention)映射,以允许不用显式修饰,就可将实体类型,属性,复杂类型和关系映射到概念性模型。

1.1K80

Entity Framework 关系约束配置

那么现在在Entity Framework中是如何配置处理呢?...Entity Framework 关系约束配置  对于实体关系对应数据表关系,无非“0:1,1:1,1:N,N:N”这几种,可以使用导航属性数据类型来表示,0…1端使用单实体类型表示,N端使用ICollection...〇关系,允许存在一个Employee而不存在MessagingAcount情况(注意在Employee中添加Accout属性)  第二种:1:1.举例说明:还是第一种例子中每个员工都有一个通讯账号的话...,并指定了表名、对应外键;注意如果不使用FluentAPI配置,Product和Order配置了相应导航属性,EF也会默认生成一张表(表名为“+”) Map:将关系配置为使用未在对象模型中公开外键属性...如果指定了空配置操作,则约定将生成列名。如果在对象模型中公开了外键属性,则使用 HasForeignKey 方法。并非所有关系都支持在对象模型中公开外键属性。 特殊一种:组合主键使用。

60710

Entity Framework Core 简介

今天来讲解一下 .NET 中重要成员 Entity Framework Core。...Entity Framework Core (以下简称 EF Core),是 EF6 之后微软推出开源轻量级可扩展跨平台 ORM 框架。...零、EF Core 开发方法 EF Core 只支持两种开发方式 Code First 和 Database First,在 EF Core 2.0 开始不支持数据库模型可视化设计器以及数据库设计导航...以下是 EF Core 目前所不具有的 EF6 功能 EDMX /模型图形可视化 ; 实体数据模型向导 ; ObjectContext API ; 使用Entity SQL查询 ; 自动迁移 ; TPT...EF Core 具有如下新功能 简单关系配置 批量INSERT,UPDATE和DELETE操作 用于测试内存提供程序 支持IoC(控制反转) 独特约束 阴影属性 Alternate keys 全局查询过滤器

1.9K10

.NET 基金会项目介绍-Entity Framework

Entity Framework 是属于 .Net 基金会一个项目,本文将简要介绍该项目相关信息。 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译、如与原文存在出入,请以原文为准。...Entity Framework Entity Framework 是一种被推荐用于那先采用 .Net 进行构建新应用程序数据层访问技术。...Entity Framework 有两个版本: Entity Framework 6 是为 .NET Framework 构建旧版本 Entity Framework, 其仅仅只能运行于 Windows...如果团队成员水平难以驾驭诸如延迟加载、导航属性、继承关系、缓存处理等等EF高级特性,那么在项目的不断推进过程中将会不断产生新由于框架不熟悉导致问题。...Entity Framework has two versions: Entity Framework 6 is the legacy Entity Framework for .NET Framework

73310

EF性能之关联加载

鱼和熊掌不能兼得 ——中国谚语 一、介绍  Entity Framework作为一个优秀ORM框架,它使得操作数据库就像操作内存中数据一样,但是这种抽象是有性能代价,故鱼和熊掌不能兼得。...(一)Lazy Loading使用是动态代理,默认情况下,如果POCO类满足以下两个条件,EF就使用Lazy Loading: POCO类是Public且不为Sealed。...导航属性标记为Virtual。 关闭Lazy Loading,可以将LazyLoadingEnabled设为false,如果导航属性没有标记为virtual,Lazy Loading也是不起作用。...5: foreach (var province in list) 6: { 7: //每次遍历(用到导航属性时...Lazy Loading会生成大量sql,Eager Loading生成关联查询比较负责,Explicit Loading同Lazy Loading一样生成很多sql,但是有一些其他优点,比如:导航属性可以不用标注为

91320

博客园现代化建设——Entity Framework

数据库连接字符串回归 在之前版本Entity Framework中,微软另搞了一套连接字符串,以至无法直接使用原来ADO.NET连接字符串。...失灵Entity Data Model 这个不知是VS 2010 SP1还是Entity Framework 4.1 RCBug,无法在VS2010中通过Entity Data Model向导创建Entity...2) 如果实体类属性名与数据库表字段名相同,不需要任何配置,Entity Framework会自动进行映射。...3) 如果实体类类名与数据库表表名相同,不需要任何配置,Entity Framework会自动进行映射。...如果符合自动映射条件,使用Entity Framework很方便,只要在数据访问层添加Entity Framework引用,并添加一个继承自DbContext类,然后就可以随时随地使用。

37120

张高兴 Entity Framework Core 即学即用:(一)创建第一个 EF Core 应用

写在前面 Entity Framework Core (EF Core) 是 .NET 平台流行对象关系映射(ORM)框架。...《张高兴 Entity Framework Core 即学即用》系列博客使用 .NET 6 和 EF Core 6 进行编码,保证了技术时效性。...导航(Navigation)属性是数据库表之间关系在实体类中体现。...设置好实体类之间导航属性后,可以通过导航属性轻松查询到关联实体数据。...在设置导航属性之前,首先需要理清楚医院和医生存在着怎样数量关系,医生是医院附属,一家医院下面会有多名医生,因此医院和医生之间是一对多关系。为了方便理解,下面只保留主键、外键和导航属性

2.4K10

Entity Framework快速入门--ModelFirst

Entity Framework带给我们不仅仅是操作上方便,而且使用上也很是考虑了用户友好交互,EF4.0与vs2010完美融合也是我们选择它一个理由吧。...我们还是和 前面的文章 Entity Framework快速入门--实例篇一样,创建一个控制台项目。...,并命名为Student,然后在属性页中修改此实体实体集名称为Student,并添加两个标量属性Name,Age【复杂属性,和导航属性在后面的文章我会介绍】如下图所示: 第五步:根据模型生成数据库...,如下图所示: 这个很是欣喜吧,这个自动化工具的确非常省事,很喜欢微软提供这样傻瓜式操作。...这也是CodeFirst编程方式比较吸引人地方吧。 微软能够做的如此方便易用,的确很令人佩服!

30920

初级.NET程序员,你必须知道EF知识和经验

因为使用code first,需要设置导航属性为virtual,才会加载延迟加载数据。 ?...如果表字段非常多,我们需要使用字段也非常多,导航属性也非常多时候,这样手动映射就显得不那么好看了。...EF预热 http://www.cnblogs.com/dudu/p/entity-framework-warm-up.html count(*)被你用坏了吗(Any用法) 要求:查询是否存在名字为...得出奇怪结论: 在导航属性里面使用count和使用any性能区别不大,反而FirstOrDefault() != null方式性能最差。...在直接属性判断里面any和FirstOrDefault() != null性能区别不大,count性能要差多。 所以,不管是直接属性还是导航属性我们都用any来判断是否存在是最稳当

1.8K100

动态构建Lambda表达式实现EF动态查询

在使用Entity Framework做数据查询时候,查询条件往往不是固定,需要动态查询。可以通过动态构建Lamda表达式来实现动态查询。...Lamda表达式 使用Lamda表达式可以很方便条件过滤数据。Entity Framework也是将Lamda表达式转换成对应SQL语句执行。...Expression 先看一下Where里面是什么,Where里面是表达式主体,分为参数m,左边参数m属性和右边值,通过中间大于运算符进行比较运算。...(type, "m"); 属性 我们需要知道属性名称和类型,可通过反射来得到对应类型并和刚刚参数关联起来: PropertyInfo property = type.GetProperty("Age...))) { Console.WriteLine(item.Name); } } 原文地址:http://www.zkea.net/codesnippet/detail/entity-framework-dynamic-search.html

2.1K10

Entity Framework中使用存储过程(三):逻辑删除实现与自增长列值返回

当你进行数据查询时候,如果没有显式设置IS_DELETED=0为筛选条件情况下,所有被“删除”记录依然会被返回。...并在删除前后根据ID获取对应记录,打印出来以验证上面设计筛选条件是否真的有效。...Framework中使用存储过程(一):实现存储过程自动映射 在Entity Framework中使用存储过程(二):具有继承关系实体存储过程如何定义?...在Entity Framework中使用存储过程(三):逻辑删除实现与自增长列值返回 在Entity Framework中使用存储过程(四):如何为Delete存储过程参数赋上Current值?...在Entity Framework中使用存储过程(五):如何通过存储过程维护多对多关系?

1.7K80

.NET Aspire Preview 4 发布!

.NET Aspire是一个有态度云原生应用开发框架,旨在改善生成.NET云原生应用体验,并提供一组强大工具来帮助你生成和运行分布式应用。...该版本关注领域包括对Entity Framework组件改进、Podman支持以及应用模型方面的更改,以便轻松选择使用现有资源或预配新资源。....可以通过环境变量 Dashboard 仪表板,仪表板外观和感觉进行了更新,新仪表板设计旨在减少导航标签所占用空间,并简化在日志、指标和跟踪之间导航。....快捷键 指标表视图,在图表或表格之间切换 数据库和实体框架改进,引入了对Entity Framework新方法,用于配置Entity Framework。...,简化了容器资源添加过程 更改容器属性, WithImageTag 拆分绑定和卷安装, WithVolumeMount 和 WithBindMount Components 成分 新功能:Azure

14010

【ASP.NET Core 基础知识】--数据库连接--使用Entity Framework Core进行数据库访问

一、介绍 Entity Framework Core(简称EF Core)是微软推出一个轻量级版Entity Framework,它是一个开源、跨平台(Windows、Linux和macOS)对象关系映射...二、Entity Framework Core基本概念 2.1 数据库提供程序 在 Entity Framework Core(EF Core)中,数据库提供程序(Database Provider)...四、Entity Framework Core高级特性 4.1 数据迁移 Entity Framework Core(EF Core)数据迁移是一种工具和过程,它允许开发者在数据库架构发生变化时,轻松地将新架构应用到数据库中...延迟加载(Lazy Loading):默认情况下,EF Core 不会自动加载实体之间导航属性。开启延迟加载功能可以提高性能,但可能会导致额外数据库查询。...五、Entity Framework Core跨数据库操作 Entity Framework Core (EF Core) 提供了跨数据库操作能力,这意味着你可以在一个应用程序中使用不同数据库引擎

14600
领券