夕拾人 發表於 2025-12-12 14:34:00

dotnet ef 迁移问题

<p><b><span class="suibi_spanFont" style="font-size: 20px; font-weight: bold">废话不多说,上教程。🤩</span></b></p>
<hr>
<b>1.运行 "dotnet tool restore" 以使“dotnet-ef”命令可用。</b>
<p>cmd 管理员运行 命令 <code>dotnet tool install --global dotnet-ef</code></p>
<p><span style="color: rgba(255, 0, 0, 1); font-weight: bold">×</span>可能出错<br>
<img src="https://img2024.cnblogs.com/blog/3393737/202512/3393737-20251212141213880-1276415029.png" alt="image" loading="lazy"></p>
<p>1.1 检查当前dotnet版本,命令如下 <code>dotnet --version</code><br>
<img src="https://img2024.cnblogs.com/blog/3393737/202512/3393737-20251212141342483-1477435887.png" alt="image" loading="lazy"><br>
<strong>版本对应关系</strong></p>
<table>
<thead>
<tr>
<th>.NET SDK 版本</th>
<th>推荐 dotnet-ef 版本</th>
</tr>
</thead>
<tbody>
<tr>
<td>.NET 5</td>
<td>5.x</td>
</tr>
<tr>
<td>.NET 6</td>
<td>6.x</td>
</tr>
<tr>
<td>.NET 7</td>
<td>7.x</td>
</tr>
<tr>
<td>.NET 8</td>
<td>8.x</td>
</tr>
<tr>
<td>.NET 9</td>
<td>9.x</td>
</tr>
</tbody>
</table>
<p>1.2 找到对应的dotnet-ef版本,执行命令 <code>dotnet tool install --global dotnet-ef --version 9.x.x</code><br>
<img src="https://img2024.cnblogs.com/blog/3393737/202512/3393737-20251212142230644-1690746035.png" alt="image" loading="lazy"></p>
<p><strong>后面正常执行迁移命令就可以了</strong></p>
<h3 id="方式-1visual-studio-包管理器控制台pmc">方式 1:Visual Studio 包管理器控制台(PMC)</h3>
<p>打开 Visual Studio → 工具 → NuGet 包管理器 → 包管理器控制台(PMC),执行以下命令:<br>
<strong>1. 创建首次迁移(生成迁移文件)</strong></p>
<blockquote>
<p>命令 <code>Add-Migration 迁移名称</code><br>
执行后,项目会生成 Migrations 文件夹,包含数据库表结构的迁移脚本。<br>
若提示「找不到 DbContext」,需指定项目名 / 上下文名:</p>
<blockquote>
<p>命令 <code>Add-Migration 迁移名称 -Project 你的项目名 -Context db类名</code></p>
</blockquote>
</blockquote>
<p><strong>2.应用迁移到数据库</strong></p>
<blockquote>
<p>命令 <code>Update-Database</code></p>
</blockquote>
<h3 id="方式-2使用-cmdpowershell">方式 2:使用 CMD/PowerShell</h3>
<p><strong>1. 创建首次迁移</strong></p>
<blockquote>
<p><code>dotnet ef migrations add 迁移名称</code></p>
</blockquote>
<p><strong>2.应用迁移到数据库</strong></p>
<blockquote>
<p><code>dotnet ef database update</code></p>
</blockquote>
<hr>
到这里就<b><span style="font-size: 25px; font-weight: bold">🎉🎉🎉大功告成了!🎉🎉🎉</span></b>
<b><span style="font-size: 20px; font-weight: bold">你学废了吗😀</span></b>

</div>
<div id="MySignature" role="contentinfo">
    <p>本文来自博客园,作者:浅·笑,转载请注明原文链接:https://www.cnblogs.com/qx-blog/p/19341395</p><br><br>
来源:https://www.cnblogs.com/qx-blog/p/19341395
頁: [1]
查看完整版本: dotnet ef 迁移问题