VS Code中设置.NET 6启动项目及EF Core迁移层级选择问题
.NET 6分层项目EF迁移与启动项目说明
一、EF Core迁移的目标层
EF Core迁移必须应用到数据层——因为数据层包含DbContext实体上下文、实体模型(Models),是直接与数据库交互的核心层。执行迁移时需要指定两个关键参数:
dotnet ef migrations add "Initial Migration" --project ./数据层路径/数据层.csproj --startup-project ./WebAPI层路径/webapi.csproj
其中--project指定迁移逻辑所属的数据层,--startup-project指定读取连接字符串配置的WebAPI层(因为配置文件在WebAPI层)。
二、WebAPI层的启动项目定位
WebAPI层是唯一的启动项目,它包含Program.cs应用入口、连接字符串配置,是整个应用的启动入口。
三、启动项目的额外检查项
除了执行dotnet run --project ./webapi.csproj,还需要确认以下操作:
- 验证WebAPI层
appsettings.json中的连接字符串配置正确,且数据层的DbContext已通过构造函数注入IConfiguration读取该配置 - 确认WebAPI层的项目文件已正确引用数据层、服务层,且
Program.cs中已完成仓储、服务接口与实现的依赖注入注册 - 迁移创建完成后,需执行数据库更新命令生成物理数据库:
dotnet ef database update --project ./数据层路径/数据层.csproj --startup-project ./WebAPI层路径/webapi.csproj
内容的提问来源于stack exchange,提问作者Muhammed Irshad
相关产品推荐
相关产品推荐

