Entity Framework 当连接字符串在自定义配置文件中时迁移失败

Entity Framework Migration fails when connection string is in custom config file

我已将连接字符串放入名为 "Connections.config" 的自定义配置文件中。我在 App.Config 中添加了一个条目

  <connectionStrings configSource="Connections.config">
  </connectionStrings>

在 Connections.config 中,我将连接字符串设置为:

<connectionStrings>
  <add name="ApplicationDbContextConnection" connectionString="data source=;initial catalog=;user id=sa;password=;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient"/>

</connectionStrings>

当我在 运行 中使用 Add-migration 命令时,我收到一条错误消息 "No connection string named 'ApplicationDbContextConnection' could be found in the application config file."

System.InvalidOperationException: No connection string named 'ApplicationDbContextConnection' could be found in the application config file.
   at System.Data.Entity.Internal.LazyInternalConnection.Initialize()
   at System.Data.Entity.Internal.LazyInternalConnection.get_Connection()
   at System.Data.Entity.Internal.LazyInternalContext.get_Connection()
   at System.Data.Entity.Infrastructure.DbContextInfo..ctor(Type contextType, DbProviderInfo modelProviderInfo, AppConfig config, DbConnectionInfo connectionInfo, Func`1 resolver)
   at System.Data.Entity.Migrations.DbMigrator..ctor(DbMigrationsConfiguration configuration, DbContext usersContext, DatabaseExistenceState existenceState, Boolean calledByCreateDatabase)
   at System.Data.Entity.Migrations.DbMigrator..ctor(DbMigrationsConfiguration configuration)
   at System.Data.Entity.Migrations.Design.MigrationScaffolder..ctor(DbMigrationsConfiguration migrationsConfiguration)
   at System.Data.Entity.Migrations.Design.ToolingFacade.ScaffoldRunner.RunCore()
   at System.Data.Entity.Migrations.Design.ToolingFacade.BaseRunner.Run()
No connection string named 'ApplicationDbContextConnection' could be found in the application config file.

除了这个项目,我在解决方案中还有几个项目使用 另一个 DbContext。

在自定义 "Connections.config" 文件上有连接字符串时,有没有办法克服这个问题。

在解决方案中,我将启动项目更改为当前项目,问题就解决了。很奇怪,但它起作用了。