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

.NET 6 & EF Core执行Add-Migration卡在Using Context阶段求助

EF Core 迁移卡在'Using Context'阶段的排查方案
  • 分部类DbContext的初始化异常
    检查所有KUSYSDbContext分部类:是否存在重复的DbSet定义、OnConfiguring方法冲突;是否在构造函数或OnModelCreating中加入了耗时操作(比如远程API调用、本地大文件读取),这类操作会导致上下文初始化停滞。

  • 数据库连接字符串问题
    确认KUSYS.Web项目配置文件(如appsettings.json)中的连接字符串是否正确:SQL Server需验证服务器地址、数据库名、认证方式;MySQL/PostgreSQL需确认端口、账号权限。连接不通或配置错误会让EF Core在验证连接时卡住。

  • POCO类映射错误
    排查四个实体类的配置:

    • StudentCourses作为关联实体,是否正确配置了复合主键(比如同时标记StudentId和CourseId为[Key])
    • 是否存在未处理的循环引用(比如Student和Course的导航属性未合理配置)
    • 数据注解是否误用(比如[ForeignKey]指向不存在的属性,[Required]标记了不可为空的关联属性)
  • EF Core版本不兼容
    执行dotnet ef --version查看全局CLI工具版本,对比项目中Microsoft.EntityFrameworkCore、Microsoft.EntityFrameworkCore.Tools等包的版本,版本不一致会导致工具无法正常解析上下文。

  • 启动项目初始化耗时
    Web项目(KUSYS.Web)的Program.cs中如果存在启动时加载大量配置、初始化第三方服务的逻辑,EF Core迁移工具会等待宿主环境初始化完成,进而卡住。可以临时创建一个仅包含DbContext的控制台项目作为迁移启动项目,规避Web项目的复杂初始化。

  • 权限与网络限制
    本地数据库需确认当前用户有服务器访问权限;远程数据库要检查防火墙端口是否开放、账号是否有创建数据库的权限,网络不通会导致上下文无法连接数据库而停滞。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 19:20:48