如何在实体框架中进行迁移?
Posted
技术标签:
【中文标题】如何在实体框架中进行迁移?【英文标题】:How do I make migrations in Entity Framework? 【发布时间】:2021-08-23 21:34:17 【问题描述】:我的研究一直告诉我使用Migrate.exe
,它没有出现在我的项目中,也无法在任何地方下载。我也在使用 VS Code 而不是 Visual Studio,这似乎使得无法使用包管理器控制台。
而且我使用的是 Entity Framework - 而不是 Entity Framework Core - 所以我没有 EFC 的所有选项。
目前我正在尝试在游戏引擎 Unity 中设置实体框架。可以使用 Entity Framework v6.2.0 设置一个临时项目并运行 dotnet pack
以获取 EntityFramework.dll
,但它不会创建 Migrate.exe
。它似乎是创建迁移的唯一选择。
你们中有人知道如何获取Migrate.exe
文件或其他添加迁移的方法吗?
【问题讨论】:
【参考方案1】:当您使用 NuGet 安装 Entity Framework 时,migrate.exe 将位于下载包的工具文件夹中。在 \packages\EntityFramework.\tools
来源是microsoft
你试过了吗?
【讨论】:
遗憾的是,该链接没有解释如何实际安装 EntityFramework,但它确实让我看到了尝试安装而不是我一直在做的事情。【参考方案2】:显然安装和添加是有区别的,并不是说当你在 nuget.org 上查看包时他们提到了这一点。
所以与其运行dotnet add package EntityFramework --version 6.2.0
我需要从 nuget.org 下载最新的 nuget.exe 并在根文件夹中创建一个 packages.config 文件。
然后我运行nuget.exe install packages.config -OutputDirectory packages
,它安装了我需要的所有文件。
packages.config:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="EntityFramework" version="6.2.0" targetFramework="net40" />
</packages>
【讨论】:
以上是关于如何在实体框架中进行迁移?的主要内容,如果未能解决你的问题,请参考以下文章