安装 Entity Framework Core
先决条件
EF 需要最新的 .NET SDK。
- 在运行时,EF Core 需要最新版本的 .NET。 请参阅 EF Core 版本,查找要使用的 EF Core 版本所需的最低 .NET 版本。
可在 Windows 上的 Visual Studio 中使用 EF Core 来开发应用程序。 建议使用最新版本的 Visual Studio。
获取 Entity Framework Core
EF Core 以 NuGet 包的形式提供。 要将 EF Core 添加到应用程序,请安装适用于要使用的数据库提供程序的 NuGet 包。 有关可用数据库提供程序的列表,请参阅提供程序。
要安装或更新 NuGet 包,可以使用 .NET Core 命令行界面 (CLI)、Visual Studio 包管理器对话框或 Visual Studio 包管理器控制台。
.NET Core CLI
在操作系统的命令行中使用以下 .NET Core CLI 命令来安装或更新 EF Core SQL Server 提供程序:
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
可以使用
-v
修饰符在dotnet add package
命令中指明特定的版本。 例如,若要安装 EF Core 6.0.14 包,请将-v 6.0.14
追加到命令中。
有关详细信息,请参阅 .NET 命令行接口 (CLI) 工具。
Visual Studio NuGet 包管理器对话框
从 Visual Studio 菜单中选择“项目”>“管理 NuGet 包”
单击“浏览”或“更新”选项卡
若要安装或更新 SQL Server 提供程序,请选择
Microsoft.EntityFrameworkCore.SqlServer
包并确认。
有关详细信息,请参阅 NuGet 包管理器对话框。
Visual Studio NuGet 包管理器控制台
从 Visual Studio 菜单中选择“工具”>“NuGet 包管理器”>“包管理器控制台”
若要安装 SQL Server 提供程序,请在包管理器控制台中运行以下命令:
Install-Package Microsoft.EntityFrameworkCore.SqlServer
若要更新提供程序,使用
Update-Package
命令。若要指定特定版本,可以使用
-Version
修饰符。 例如,若要安装 EF Core 6.0.14 包,请将-Version 6.0.14
追加到命令中
有关详细信息,请参阅包管理器控制台。
获取 Entity Framework Core 工具
可以安装工具来执行项目中与 EF Core 相关的任务,例如创建和应用数据库迁移,或基于现有数据库创建 EF Core 模型。
提供了两个工具集:
.NET Core 命令行接口 (CLI) 工具可用于 Windows、Linux 或 macOS。 这些命令以
dotnet ef
开头。包管理器控制台 (PMC) 工具在 Windows 上的 Visual Studio 中运行。 这些命令以动词开头,例如
Add-Migration
、Update-Database
。
获取 .NET Core CLI 工具
.NET core CLI 工具需要前面的系统必备中提到的 .NET Core SDK。
必须将
dotnet ef
安装为全局工具或本地工具。 大多数开发人员偏向于使用以下命令将dotnet ef
安装为全局工具:dotnet tool install --global dotnet-ef
dotnet ef
还可用作本地工具。 若要将它用作本地工具,请使用工具清单文件恢复声明为工具依赖项的项目的依赖项。若要更新工具,请使用
dotnet tool update
命令。安装最新的
Microsoft.EntityFrameworkCore.Design
包。dotnet add package Microsoft.EntityFrameworkCore.Design
重要
请务必使用与运行时包主版本匹配的工具包版本。
获取包管理器控制台工具
若要获取适用于 EF Core 的包管理器控制台工具,请安装 Microsoft.EntityFrameworkCore.Tools
包。 例如,在 Visual Studio 中:
Install-Package Microsoft.EntityFrameworkCore.Tools
升级到最新版本的 EF Core
每次发布新版本的 EF Core 时,我们都还会在 EF Core 项目中发布新版本的提供程序,如 Microsoft.EntityFrameworkCore.SqlServer、Microsoft.EntityFrameworkCore.Sqlite、Microsoft.EntityFrameworkCore.Cosmos 和 Microsoft.EntityFrameworkCore.InMemory。 只需升级到新版本的提供程序即可获取所有改进。
如需更新使用第三方数据库提供程序的应用程序,请始终检查与要使用的 EF Core 版本兼容的提供程序有无更新。 例如,版本 1.0 的数据库提供程序与版本 2.0 的 EF Core 运行时不兼容,等等。
用于 EF Core 的第三方提供程序通常不随 EF Core 运行发布修补程序版本。 若要将使用第三方提供程序的应用程序升级到 EF Core 的修补程序版本,可能需要添加对单独的 EF Core 运行时组件(尤其是 Microsoft.EntityFrameworkCore 和 Microsoft.EntityFrameworkCore.Relational)的直接引用。