2014-03-26 32 views
0

我需要在实体框架上下文的连接字符串中传递WSID。 我不想更新我拥有的所有实例,要传递一个新的连接字符串,所以我想知道是否有一个方法来覆盖可以帮助?在EF连接中添加WSID字符串

有关信息,我有这个实际上是:

using(var context = new SampleEntities()) 

,我不想重写它这样:

using(var context = new SampleEntities(NewConnectionString)) 

我试图重写方法的createContext没有成功...

+0

你在哪里得到来自新的连接字符串? –

+0

不要专注于此,它只是一个简单的字符串,并不是我想要解决问题的方式。 – Arngrim

+0

你可以把你的代码放在SampleEntities ctor中吗?如果我不想要你做什么操纵,我很难给你一个解决方案轨道。 –

回答

0

使用EntityFramework 6,不可能将本地连接字符串传递给上下文的构造函数(没有更多的构造函数),所以我已经超载了我的继续分机类添加构造

public partial class MyObjectEntities : DbContext 
{ 
    public MyObjectEntities(string connectionString) 
     : base(connectionString) 
    { 
    } 
} 

此外,因为它是不可能的更新instanciation后的上下文中的连接字符串,我有我的上下文的instanciating之前进行所需的连接字符串。 所以要做到这一点,我创建了一个dll项目(可在多项目项目之间共享),能够配置我的环境并包含我所需的WSID。

下面是一个连接字符串的construtor给微软http://msdn.microsoft.com/en-US/en-en/library/bb738533%28v=vs.110%29.aspx