Entity Framework Core 简介
了解 Entity Framework Core,它的优势,以及本课程将涵盖的内容。
Entity Framework Core (EF Core) 是 Entity Framework 的现代化、轻量级、开源且跨平台的版本。Entity Framework 是 .NET 应用程序的面向对象关系映射器(ORM),它使 .NET 开发者能够通过模型对象与关系型数据库进行交互。
EF Core 负责将模型对象持久化到关系型数据库中,也从数据库中读取数据。作为一种数据访问技术,EF Core 能够在原本类型不兼容的数据之间进行转换。上图展示了 EF Core 如何将 Employees 表中的每一行映射为一个 Employee 对象。
EF Core 通过称为数据库提供程序的插件库支持多种不同的数据库。其中一些包括:
- SQL Server / Azure SQL Database
- MySQL
- SQLite
- PostgreSQL
- Cosmos DB
EF Core 支持所有现代 .NET 实现,例如:
- .NET 与 .NET Core
- .NET Framework(版本 4.7.2 支持 EF Core 3.1)
- Mono
- Xamarin
- UWP
课程主题
本课程使用 2021 年 11 月发布的 Entity Framework Core 6.0。我们将讲解 EF Core 的各项功能以及开发过程中常用的流程。通过这些流程,我们将演示如何连接数据库、获取数据、管理数据变更,并保存数据。
适合人群
如果你符合以下情况,本课程非常适合你:
- 你是 .NET 开发者,希望提升与关系型数据库交互时的生产力和效率。
- 你想学习如何使用 EF Core 将模型对象持久化到关系型数据库中。
- 你想减少应用程序与数据库交互所需的数据访问代码量。
- 你想在编写数据访问代码时利用 EF Core 提供的经过测试、自动生成的代码。
课程优势
EF Core 为开发者带来诸多好处,例如提高开发效率、减少数据访问所需的代码量,并支持连接多种数据存储。它是一个开源库,易于使用。开发者无需为不同数据存储编写不同的查询,即可执行 CRUD 操作。数百万应用程序正在使用 EF Core,因为它稳定、性能高,能够应对极端负载场景。
先修要求
本课程包含大量 C# 编写的代码示例。由于涉及与关系型数据库的交互,具备一定的 SQL 知识会有所帮助。在必要时,课程中的代码示例将使用 SQLite 作为数据库提供程序。
EF Core 的配置与安装
EF Core 以 NuGet 包的形式提供。安装方式有两种,如下所示:
- Visual Studio:这是一个集成开发环境。
- 命令行:.NET Core 命令行工具是跨平台的,可在 Windows、macOS 或 Linux 操作系统下的命令行环境中运行。有关如何通过命令行工具安装 EF Core 的详细信息,请参阅本课程附录部分。
在本课程中,我们将使用命令行工具来演示相关概念。