You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET Core MVC克隆项目本地数据库无法同步最新迁移变更求助

解决Code-First迁移同步后数据库列缺失的问题

嗨,这个问题我之前也碰到过!本质就是你在主电脑上完成了Code-First迁移并同步到了本地数据库,但笔记本拉取代码后,本地数据库还没跟上这些结构变更,导致实体模型和数据库表结构不匹配,才会报“缺少列”的错误。下面给你一步步的解决办法:

第一步:确认本地数据库的迁移状态

打开笔记本上的Visual Studio项目,找到包管理器控制台(Package Manager Console),运行以下命令查看已应用的迁移情况:

Get-Migration

输出结果里,带[Applied]标记的是已经同步到本地数据库的迁移,没有标记的就是你在主电脑上新创建、还未在笔记本执行的迁移。

第二步:将未执行的迁移应用到本地数据库

确认好未同步的迁移后,在包管理器控制台执行命令,让数据库结构跟上实体模型的变化:

Update-Database

如果你的项目有多个环境或自定义连接字符串,也可以指定参数:

# 指定连接字符串名称
Update-Database -ConnectionStringName "YourConnectionStringName"
# 或者指定运行环境
Update-Database -Environment "Development"

第三步:验证修复效果

执行完迁移后重启你的.NET Core MVC应用,应该就不会再出现实体缺少列的错误了。如果问题依然存在,可以检查这几点:

  • 确认笔记本的数据库连接字符串指向的是本地正确的数据库(别不小心连到主电脑的数据库了)
  • 查看项目的Migrations文件夹,确认新的迁移文件已经成功拉取到本地
  • 直接用SQL Server管理工具(比如SSMS)查看对应表的结构,确认新增的列是否已经存在

最后提个小建议:以后每次拉取远程代码后,都先跑一遍Get-Migration检查迁移状态,必要时执行Update-Database,这样就能避免模型和数据库不同步的问题啦。

内容的提问来源于stack exchange,提问作者Zarch

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:35:06