首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Entity Framework Core 2.0 新特性

一.模型级查询过滤器(Model-level query filters)   ef core2.0包含了一个新特性,我们叫他模型级查询过滤器(Model-level query filters)。...在 ef core 2.0 中,我们将自定义的DbContext类型注册到DbContextPool服务中,可让该数据库上下文类型的实例重复使用。...六.拆分(Table splitting)   现在可以将两个或多个实体类型映射到同一,其中主键列将被共享,每一行对应两个或多个实体。   ...目前只支持标量函数 EF Core迁移将不负责创建它,您必须在数据库中创建映射函数 九.code first 实体配置   在EF6可以通过 EntityTypeConfiguraiton 封装特定实体类型的配置代码...,在EF Core2.0中,这个特性回来了(EF Core 之前的 core版本不支持)。

1.9K50

Do You Kown Asp.Net Core - 根据实体自动创建Razor Page CURD页面模板

Scaffolding Template Intro 我们知道在Asp.Net MVC中,如果你使用的EF的DBContext的话,你可以在vs中通过右键解决方案-添加控制器-添加包含视图的控制器,然后...vs会根据你选择的Model自动生成相应的CURD的控制器和View,非常便利,这种就叫做 ASP.NET Scaffolding Template,之前雪燕大大有过一篇介绍,有兴趣可以看看【传送门】...大家知道近期Asp.Net Core2.0发布了,微软也推出了Razor Page来作为默认的Asp.Net Core Web项目,但一开始并没有提供Scaffolding Template(后简称ST...Hello Scaffolding Razor Page Step 1 : 创建Razor Page 项目 Step 2 : 创建一个Model,在这里我们创建一个Blog实体: public class...PS:asp.net core QQ学习群:376248054 通关密码:cnblogs(无密码一律不通过)

1.1K60
您找到你想要的搜索结果了吗?
是的
没有找到

EF Core 入门

EF可以说是很好的诠释了这个理念。 EF可以在不使用任何配置的前提下,自动解析之间的映射(具体的映射逻辑与我们手写的ORM工具一致或相近)。 自动跟踪更改。...可以延迟加载需要的数据,外键引用属性、查询结果等 丰富的映射关系,支持一对一,一对多,多对多,甚至继承、单多实例等 可以使用Linq 进行查询 非Core版的可以通过数据库生成实体,两种都可以通过实体生成...因为EF更多的是基于.NET Framework开发的,所以微软以EF基础针对.net core做了一定的修改,然后EF Core诞生了。可以说EF Core是专门.net core开发的。...这是EF Core保留的迁移记录,以便下次使用。 如果项目根目录里没有 blogging.db 这个SQLite文件的话,会自动创建该文件,同时设置好;如果有,但不是SQLite的文件,则会报错。...使用工具连接到blogging.db数据库,可以看到 EF自动生成两个实体对应的DDL: CREATE TABLE "ModelBs" ( "Id" INTEGER NOT NULL CONSTRAINT

2.4K10

2022年了有哪些值得推荐的.NET ORM框架?

EF/EF Core Entity Framework (EF) Core 是轻量化、可扩展、开源和跨平台版的常用 Entity Framework 数据访问技术,EF Core 是适用于 .NET 的现代对象数据库映射器...EF Core 通过提供程序插件 API 与 SQL Server、Azure SQL 数据库、SQLite、Azure Cosmos DB、MySQL、PostgreSQL 和其他数据库一起使用。...StoredProcedureEFCore-用于执行存储过程的 Entity Framework Core 扩展。 ShardingCore - EF Core分库读写分离的扩展。...主要特点: 支持 CodeFirst 模式,即便使用 Access 数据库也支持数据迁移; 支持 DbFirst 模式,支持从数据库导入实体,或使用实体生成工具生成实体; 支持 深入的类型映射,比如...与ActiveRecord一样,它支持对象和数据库之间的密切关系。 与SubSonic一样,它支持使用 T4 模板生成 poco (仅限 V5)。

5.8K11

Entity Framework Core-Migrations

Client实体并且我们有个数据库已经包含了"Client": public class Client { public int Id { get; set; } public string..."Address" 属性: public string Address { get; set; } 使用EF Core Migration将字段更新到Client中 PM> dotnet ef migrations...,我们移除之后的migration如果没有提交到数据库,针对这个我们能执行下面两个命令其中的任何一个: PM> dotnet ef migrations remove or PM> remove-migration...8 生成SQL 脚本 我们也能生成SQL 数据库的SQL脚本,执行下面2个命令中的任何一个来完成这个工作: PM> dotnet ef migrations script PM> script-migration...这个命令将会针对所有的migrations生成一个脚本,如果我们有这个需求,我们可以使用这个脚本生成一个数据库的副本 PM> dotnet ef migrations script Build started

25240

.NET Core EFCore零基础快速入门简单使用

一、什么是 Entity Framework (EF) Core Entity Framework (EF) Core 是轻量化、可扩展和跨平台版的对象关系映射程序 (O/RM)数据访问技术,。...设计包,用于在命令行工具下EF Core开发的工具套件 Microsoft.EntityFrameworkCore.Tools 用于数据库的生成、迁移、生成等 三、EF Core支持的数据库引擎:SqlServer...、Sqlite、PostgreSQL、MySql、Oracle等主流数据库,不同的数据库需要EF Core数据库提供程序支持。...、操作数据库等信息 public class BloggingContext: DbContext { /// /// Blogs的操作属性...,执行此命令后,会生成Migrations文件夹及相关的迁移文件 Update-Database //生成数据库 5、数据库:增、读、删、改操作 using (var db

2.8K10

2022年了有哪些值得推荐的.NET ORM框架?

EF/EF Core Entity Framework (EF) Core 是轻量化、可扩展、开源和跨平台版的常用 Entity Framework 数据访问技术,EF Core 是适用于 .NET...EF Core 通过提供程序插件 API 与 SQL Server、Azure SQL 数据库、SQLite、Azure Cosmos DB、MySQL、PostgreSQL 和其他数据库一起使用。...StoredProcedureEFCore-用于执行存储过程的 Entity Framework Core 扩展。 ShardingCore - EF Core分库读写分离的扩展。...主要特点: 支持 CodeFirst 模式,即便使用 Access 数据库也支持数据迁移; 支持 DbFirst 模式,支持从数据库导入实体,或使用实体生成工具生成实体; 支持 深入的类型映射...与ActiveRecord一样,它支持对象和数据库之间的密切关系。 与SubSonic一样,它支持使用 T4 模板生成 poco (仅限 V5)。

3.8K20

Magicodes.WeiChat——ASP.NET Scaffolding生成增删改查、分页、搜索、删除确认、批量操作、批量删除等业务代码

关于T4代码生成这块,我之前写过几篇帖子,如:《Magicodes.NET框架之路——让代码再飞一会(ASP.NET Scaffolding)》(http://www.cnblogs.com/codelove...ASP.NET Scaffolding虽然有些不足,但是思虑再三,考虑到时间成本,Magicodes.WeiChat中还是采用了ASP.NET Scaffolding模板来生成业务代码。...虽然ASP.NET Scaffolding Template存在一些缺陷,无法完美的实现某些代码生成的问题,但是我们目前不需要到这个级别,因此还是勉强够用了。...其中,我们需要重点关注以下两个目录: MvcControllerWithContext:该目录下的模板添加控制器时,选择基架项【包含视图的 MVC5 控制器(使用Entity Framework)】...MvcView:该目录下的模板添加控制器时,选择基架项【包含视图的 MVC5 控制器(使用Entity Framework)】时生成增删改查视图的代码的T4模板。 然后,我们就开始生成之旅。

89320

EF Core的增删改查

初始化 在实际开发中,一般都是先设计好数据再进行开发,所以很少用到EF Core的数据迁移功能。所以EF Core的初始化,一般也指的是EF Core上下文初始化。...如果需要后续变更,那么就需要在创建自定义EF Core 上下文类的时候,之添加一个连接字符串的属性或者字段,以方便初始化的时候指定。...我没找到EF Core官方文档中对于这种方式的称呼,所以我就悄悄的抢注了一下托管。 如果我们使用Config(也就是 《C# 数据操作系列 - 7....当然了,使用配置文件必然会导致项目的增多,而且大量的重复可能会出现。当然了,如果考虑到这个问题的话,可以试试写一个项目代码生成器哦,专门用来处理这些差不多的。...也就是说,如果你从EF Core的上下文获取了一个实体对象,对这个对象的某些值进行了修改。这时候EF Core其实已经记录了这个对象的修改。

3K20

.net 温故知新:【10】.NET ORM框架EFCore使用入门之CodeFirs、DBFirst

从这篇ORM完成之后就将进入asp.net core的学习总结! EFCore Entity Framework Core (EF Core) 是适用于 .NET 的新式对象数据库映射器。...EF Core 通过数据库提供程序插件模型与 SQL Server/Azure SQL 数据库、SQLite、Azure Cosmos DB、MySQL、PostgreSQL 和更多数据库配合使用。...搭建基架,模型创建一组初始。该命令完成后会生成一个Migration文件夹包含两个,一个数据库创建InitialCreate是我们定义的,可以按需求更改名称。...基于该比较,EF Core 检测变化,并添加适当的迁移而不是再重新生成数据库。 最后运行命令Update-Database生成数据库和,数据库在我们配置的程序路径下。...生成的sqlite数据库如图,因为我们定义了Student、Course实体,所以会生成两个以及的字段,同时还会生成一个历史,用于记录我们每次迁移的记录。

2.5K30

asp.net core之EfCore

EF Core提供了一种简单、灵活和高效的方式来与各种数据库进行交互,它通过将数据库映射.NET对象,并提供了一组强大的查询语言和操作API,使开发人员能够以面向对象的方式进行数据库操作。...本文是一个简单的EF Core教程,演示了如何使用EF Core进行数据库操作。 1. 安装EF Core 首先,创建一个WebApi项目,我们需要安装EF Core。...定义模型 在使用EF Core之前,我们需要定义一个或多个模型,这些将映射到数据库。.../LearnEfCore.db")); 这里UseSqlite指定了数据库连接字符串。 4. 进行数据库迁移 在使用EF Core之前,我们需要进行数据库迁移。...迁移是将模型映射到数据库的过程。 这里需要注意的是,生成迁移文件需要安装Microsoft.EntityFrameworkCore.Design的包。

43030

Entity Framework Core 总结

Core 一样,所以会依赖注入 MyDbContext等 # 全局安装 EF Core 工具 dotnet tool install --global dotnet-ef # 安装 设计包,这是对项目运行命令所必需的...dotnet add package Microsoft.EntityFrameworkCore.Design # migrations 命令迁移搭建基架,以便模型创建一组初始 dotnet...ef migrations add InitialCreate 创建描述结构的代码文件 EF Core两个工具集 .NET Core 命令行接口 (CLI) 工具可用于 Windows、Linux...为了跨平台 应用,同时也便于编写Shell脚本,建议使用 .NET Core CLI ,不依赖于 Visual Studio 在 ASP.NET Core 中初始化数据库 这是另一种创建结构,初始化数据的方式...();),当然创建完结构后,可以设定数据库种子(初始化数据) 参考:ASP.NET Core 中的 Razor Pages 和 Entity Framework Core - 第 1 个教程(共 8

1.1K30

01-EF Core笔记之创建模型

Core中模型中该实体类型定义的属性,这些类型只能通过变更跟踪器进行维护。...在数据库中,数据之间的关系可以分为一对一、一对多、多对多三种,在实体之间同样有这三种关系,但是EF Core仅支持一对一、一对多关系,如果要实现多对多关系,则需要通过关系实体进行关联。...继承 关于继承关系如何在数据库中呈现,目前有三种常见的模式: TPH(table-per-hierarchy):一张存放基和子类的所有列,使用discriminator列区分类型,目前EF Core...仅支持该模式 TPT(table-per-type ):基和子类不在同一个中,子类对应的中仅包含基的主键和基扩展的字段,目前EF Core不支持该模式 TPC(table-per-concrete-type...):基和子类不在同一个中,子类中包含基的所有字段,目前EF Core不支持该模式 EF Core仅支持TPH模式,基和子类数据将存储在同一个中。

3K20

EF Core如何处理多对多关系

目录 一、解决多对多 二、增 三、查 四、删 EF Core在处理多对多关系时并不像一对一和一对多关系那样好处理,下面我们利用一个简单的电子商城购物车来讲解一下吧。...但是我要告诉你的是,到目前为止EF Core无法处理这样的代码,当你尝试添加迁移时控制台会输出如下内容: Unable to determine the relationship represented...复合主键由两列组成一个主键,在EF Core中创建复合键唯一办法是在OnModelCreating中创建。...== 2); // 方法1:使用两个的主键ID关联 var shoppingCartCommodity1= new ShoppingCartCommodity { ShoppingCartId...= shoppingCart.Id, CommodityId = commodity.Id }; // 放法2:使用两个实体关联 var shoppingCartCommodity2= new

2K30

Entity Framework Core 2.0 新特性

(本文的英文原文地址:这里) 1.实体方面的新内容     1.1拆分      现在可以将多个实体类型映射到将要共享主键列的同一个,并且每一行将对应于两个或多个实体。    ...SQL时,该方法的名称将用作函数的名称(在本例中用户定义的函数),但在方法注册期间可以覆盖名称和模式 目前只支持标量功能 必须自行在数据库中创建映射函数,EF Core迁移不会对其进行创建 2.性能提升方面...(db, 147); } 3.查询方面 3.1改进LINQ翻译 使更多的查询成功执行,并将更多的逻辑生成SQL让它在数据库中执行(而不是内存中),并且从数据库中检索更少的不必要的数据。...3.2GroupJoin改进 此工作改进了组连接生成的SQL。...在EF核2.0,我们增加了对插值字符串中的特殊支持,我们接受原始的SQL字符串两个主要的API:FromSql和ExecuteSqlCommand。

3.8K90

.NET 性能—Entity Framework Core调优

按下硬件、网络不提,我们单从程序层面对系统的性能进行优化,翻来覆去无外乎三个方面 缓存 异步 sql 本片文章,我们针对.NET Core Web项目的EF Core框架进行性能优化。...EF Core优化 那么如果是多个的数据查询如何优化呢?...core我们生成的sql语句left join语句,查询结果为主表、副的所有字段;右数据的字段会存在null。...数据库查询进行笛卡尔积查询,实际查询了4次 拆分查询时,EF Core生成两个sql语句: 1、单查询主表product 2、主表product与副productLogs进行inner join,...即不使用EF Core本身生成的sql var result= ProductContext.Product.FromSqlRaw("select * from product").ToList();

26041

.net core web api + Autofac + EFCore 个人实践

简要介绍下各工程: Account:net core Web API类型,前端提供Rest服务 Account.Common:公共工程,与具体业务无关,目前里边仅仅有两个,自定义业务异常及错误码枚举...于是,这个模块就成了你现在看到的这个样子,通俗点儿讲就是找出当前模块文件所在程序集中的所有类型注册其实现的服务接口,注册模式为生命周期模式。...这里,我所有的服务都以Service结尾。 Account.Repository.EF工程与此类似,不再赘述。...老WebAPI中,是需要通过Route来设置,具体请求方法约束需要单独通过类似HttpGet、HttpPut等来约束,而.NET CORE中,可以合二一,路由设置和请求方法约束一起搞定。...授权基于传统三权限(用户,角色,权限) 4)分布式缓存、会话缓存及负载均衡

1.4K40

企业应用开发中.NET EF常用哪种模式?

EF/EF Core介绍Entity Framework (EF) Core 是轻量化、可扩展、开源和跨平台版的常用 Entity Framework 数据访问技术,EF Core 是适用于 .NET...EF Core 通过提供程序插件 API 与 SQL Server、Azure SQL 数据库、SQLite、Azure Cosmos DB、MySQL、PostgreSQL 和其他数据库一起使用。...代码优先模式(Code First)数据库优先模式(Database First)模型优先模式(Model First)代码优先模式(Code First)代码优先模式是指先编写对于数据库的实体和数据库上下文类...,然后通过 EF 工具根据代码创建生成数据库结构、映射文件等。...缺点自动生成的模型可能包含过多的属性和关联,导致模型过于庞大和复杂,不利于维护和理解。自动生成的模型可能并不是最优化的数据访问方式,可能导致性能上的一些问题,需要额外优化。

17821
领券