ASP.NET项目用SSMS删库表及迁移后如何用Entity Framework重建表
现有项目EF重建数据表操作流程
确保你的项目中DbContext、所有实体类的代码完整没有缺失后,按以下步骤操作即可:
- 清理项目残留迁移文件:确认
Migrations文件夹下所有迁移代码、包括DbContextModelSnapshot.cs文件已完全删除,有残留直接手动删除即可 - 生成初始化迁移:打开程序包管理器控制台(PMC)或者终端切换到启动项目根目录,执行迁移生成命令
- 如果你用程序包管理器控制台:执行
Add-Migration InitRebuild - 如果你用dotnet CLI:执行
dotnet ef migrations add InitRebuild
- 如果你用程序包管理器控制台:执行
- 执行数据库更新:迁移生成无报错后,执行更新命令将结构同步到数据库
- 程序包管理器控制台:执行
Update-Database - dotnet CLI:执行
dotnet ef database update
- 程序包管理器控制台:执行
- 验证结果:操作完成后打开SSMS查看对应数据库,即可看到EF已按照你的实体结构重建所有数据表,如果你执行过程中出现连接报错,先检查appsettings.json中的数据库连接字符串是否指向你要操作的本地测试库
是否需要新建项目的判断
不需要为了该问题新建ASP.NET项目迁移现有代码:上述重建流程全程耗时不超过5分钟,远低于新建项目后复制业务代码、调试依赖配置、修正路径/配置项的时间成本。只有当你当前项目的EF核心配置已经完全混乱、且无法定位配置错误时,才需要考虑新建项目迁移代码。
内容的提问来源于stack exchange,提问作者Christian
相关产品推荐
相关产品推荐

