当前位置:   article > 正文

EF Core的基础知识

ef core

Entity Framework(EF) Core

概念

EF Core 全称是Entity Framework Core,可使用 EF Core 开发面向 .NET Core 的应用,EF Core 同时支持在 Visual StudioVisual Studio for Mac 或 Visual Studio Code 等环境下开发。虽然EF CORO 同样支持在Xamarin和.Net Native 上实现运行,但是存在运行限制,可能会影响EF Core处理的效率,暂不推荐使用

技术大纲

实体框架核心

实体框架核心是继EF 6.x之后的实体框架的新版本。它是一种开源、轻量级、可扩展的跨平台版本的实体框架数据访问技术。

实体框架是一个对象/关系映射(O/RM)框架。它是对ADO.NET的增强,为开发人员提供了访问和存储数据库中数据的自动化机制。

EF Core旨在与.NET Core应用程序一起使用。但是,它也可以与基于.NET 4.5+框架的标准应用程序一起使用。

下图说明了支持的应用程序类型、.NET Framework和操作系统。

 

EF核心开发方法

EF Core支持两种开发方法1)代码优先2)数据库优先。EF Core主要以代码优先的方法为目标,很少支持数据库优先的方法,因为EF Core 2.0不支持数据库模型的可视化设计器或向导。

在代码优先方法中,EF Core API基于域类中提供的约定和配置,使用迁移创建数据库和表。这种方法在领域驱动设计(DDD)中很有用。

在数据库优先方法中,EF Core API使用EF Core命令基于现有数据库创建域和上下文类。这在EF Core中的支持有限,因为它不支持可视化设计器或向导。

 

安装或更新EF Core Sql Server的三个方法

NET Core CLI (控制台命令行操作页面可执行)

执行“dotnet add package Microsoft.EntityFrameworkCore.SqlServer”该指令

可以使用 -v 修饰符在 dotnet add package 命令中指明特定的版本。 例如,若要安装 EF Core 2.2.0 包,请将 -v 2.2.0 追加到命令中

Visual Studio NuGet 包管理器对话框

从 Visual Studio 菜单中选择“项目”>“管理 NuGet 包“

单击“浏览”或“更新”选项卡

若要安装或更新 SQL Server 提供程序,请选择 Microsoft.EntityFrameworkCore.SqlServer 包并确认。

Visual Studio NuGet 包管理器控制台

从 Visual Studio 菜单中选择“工具”>“NuGet 包管理器”>“包管理器控制台”

Install-Package Microsoft.EntityFrameworkCore.SqlServer

若要更新提供程序,使用 Update-Package 命令

若要指定特定版本,可以使用 -Version 修饰符。 例如,若要安装 EF Core 2.2.0 包,请将 -Version 2.2.0 追加到命令中

EF中的重要元素DBContext

DbContext是实体类和数据库之间的桥梁, DbContext主要负责与数据交互,主要作用:

1、DbContext包含所有的实体映射到数据库表的实体集(DbSet < TEntity >)

2、DbContext 将LINQ-to-Entities查询转换为SQL查询并将其发送到数据库

3、更改跟踪: 它跟踪每个实体从数据库中查询出来后发生的修改变化

4、持久化数据: 它也基于实体状态执行插入、更新和删除操作到数据库中

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/666153
推荐阅读
相关标签
  

闽ICP备14008679号