ASP.NET Core Web API 错误 - 如何解决发现多个 DbContext。指定在更新数据库中使用哪一个

问题描述 投票:0回答:2

在 ASP.NET Core-6 Web API 中,我有两个 DBContext:

  1. 应用程序身份DbContext
  2. MyAppDbContext

对于添加迁移,我在PM中使用了这两个:

  1. 添加迁移InitialIdentity -OutputDir“基础设施/身份/迁移”-context ApplicationIdentityDbContext
  2. 添加迁移InitialDDM -OutputDir“持久性/迁移”-context MyAppDbContext

两个添加迁移工作。

但是,对于我更新数据库时:

更新数据库-详细

我收到此错误:

发现多个 DbContext。指定使用哪一个。对 PowerShell 命令使用“-Context”参数,对 dotnet 命令使用“--context”参数

我该如何解决这个问题?

谢谢你

c# entity-framework asp.net-web-api
2个回答
1
投票

如果您使用的是Visual Studio的

Package Manager Console
参考
Microsoft.EntityFrameworkCore.Tools
,那么您可以执行以下命令:

PM> Update-Database -context your_context -v 

如果您使用

dotnet
命令,请尝试以下操作:

dotnet ef database update --context your_context

0
投票
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)

#warning 为了保护连接字符串中潜在的敏感信息,您应该将其从源代码中移出。您可以使用 Name= 语法从配置中读取连接字符串,从而避免搭建连接字符串 - 请参阅https://go.microsoft.com/fwlink/?linkid=2131148。有关存储连接字符串的更多指导 => optionsBuilder.UseSqlServer("constring)

应该尝试将其放在您的dbcontext上并在startup.cs上指定它

© www.soinside.com 2019 - 2024. All rights reserved.