我有一个使用 Entity Framework 6 的应用程序。
我的项目名为数据,我有DbContext
。
public partial class MyDbContext: DbContext
{
static MyDbContext()
{
Database.SetInitializer<MyDbContext>(null);
}
public MyDbContext()
: base("Name=" + Utility.Constants.DbConnectionName)
{
Database.SetInitializer<MyDbContext>(null);
}
}
Utility.Constants.DbConnectionName = "TestConnection"
我的web.config当然有:
<add name="TestConnection" connectionString="Data Source=MYSERVERIPADDRESS;Initial Catalog=unitdb;User ID=sa;Password=12345;Connect Timeout=600;MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />
然后我还有一个Windows服务项目。
在该项目中,我引用了我的数据项目,因此我可以访问我的实体框架实体。同样在我的Windows服务项目中,我有一个App.config
具有相同的连接字符串(上面),因为如果没有那么它将不知道从何处获取数据。
我是否有办法在Windows服务项目中动态设置连接字符串?因为我的Windows服务可能连接到不同的数据库(当然该数据库具有相同的结构,因此EF可以获取信息)。
感谢并感谢任何帮助