更改 Entity Framework DbContext 的数据库名称

Change DB name for Entity Framework DbContext

我继承了一个使用 Entity Framework 访问 SQL 服务器数据库的应用程序。 DbContext class 的构造函数如下所示,其中 BuildingPermits 是初始目录的名称。

我希望能够通过配置文件而不是更改代码在数据库之间切换(使用相同的连接)。

我怎样才能做到这一点?

public BuildingPermitsDbContext() : base("BuildingPermits")
{
    Database.SetInitializer<BuildingPermitsDbContext>(null);
}

你可以试试这个。

using System.Configuration;

public BuildingPermitsDbContext() : base(DatabaseName())
{
    Database.SetInitializer<BuildingPermitsDbContext>(null);
}

private static string DatabaseName()
{ 
   var db = ConfigurationManager.AppSettingss["desiredDbName"];
   return db;
}