试试这个:
在web.confige,创建现有的连接字符串的副本,并给它一个不同的名称。更改此新连接字符串的连接字符串属性。例如 如果您以前有一个连接字符串声明为
<add name="MyEntities" connectionString="metadata=res://*/Model.csdl|res://*/Model.ssdl|res://*/Model.msl;provider=System.Data.SqlClient;provider connection string="data source=MySQL1;initial catalog=MyDB;user id=sa;password=password123;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
添加另一个给它一个新的名字
<add name="MyEntities2" connectionString="metadata=res://*/Model.csdl|res://*/Model.ssdl|res://*/Model.msl;provider=System.Data.SqlClient;provider connection string="data source=MySQL2;initial catalog=MyDB;user id=sa;password=password987;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" />
然后在你的代码文件,添加了“使用System.Data.EntityClient;”命名空间。声明一个entityConnection对象并分配默认服务器。
econn = new EntityConnection("name=MyEntities2");
您可以访问第二:
EntityConnection econn = new EntityConnection("name=MyEntities");
,你可以用下面的代码
using (var _context = new MyEntities(econn))
{ .......}
在后面的代码,你可以用下面的代码在服务器之间进行切换访问默认数据库DB使用以下代码
using (var _context = new MyEntities(econn)) <== This will point to second server now.
@Ladislave这工作,我以为我试过这个,但显然我做了一些错误,当我尝试它。谢谢。 – 2011-03-04 21:46:08