C# 具有开放访问实体模型的多连接

C# 具有开放访问实体模型的多连接,c#,orm,telerik,entity-framework-5,telerik-open-access,C#,Orm,Telerik,Entity Framework 5,Telerik Open Access,我想知道我是否可以在实体模型上有多个连接,例如- using (var db = new VWEntitiesModel("data source=Dev;initial catalog=Website1;user id=sqluser;password=&&password")) { some logic } using (var db = new VWEntitiesModel("data source=Dev;initial catalog=Website2;us

我想知道我是否可以在实体模型上有多个连接,例如-

using (var db = new VWEntitiesModel("data source=Dev;initial catalog=Website1;user id=sqluser;password=&&password"))
{
    some logic
}

using (var db = new VWEntitiesModel("data source=Dev;initial catalog=Website2;user id=sqluser;password=&&password"))
{
    some logic
}
我使用的是Telerik Openaccess实体模型。我试着用上面的方法。它似乎不喜欢它。有什么建议吗?

EntityModel(OpenAccessContext派生类型)表示映射到数据库中表的概念模型。上面指定的连接字符串的区别是“初始目录”。要针对两个不同的数据库使用相同的模型,就域模型已知的对象(表、列、约束等)而言,需要它们完全相同

您可以指定两个唯一的连接字符串,但这将导致OpenAccess为您使用的每个唯一连接字符串维护一个唯一的工作区(元数据、缓存、连接池等)


如果您的服务正在查询两个不同的数据库,您应该有两个独立的域模型来表示这些数据库,并用适当的连接字符串对它们进行实例化。

当您说它不喜欢它时,您能更精确地描述一下这个不喜欢吗?它有什么形式?可能是一条错误消息或什么的?我对Telerik OpenAccess不太熟悉,但是,如果你不能,我会说这是一个很大的限制。无论如何,这段代码是同步的,因此从技术上讲,你不会打开两个单独的连接,你会在打开第二个之前关闭第一个连接。实际上,我在WCF服务上遇到了这个错误。我有wcf服务和控制台应用程序。基本上,wcf服务读取多个数据库并发送电子邮件。控制台应用程序将每小时调用wcf服务。