使用具有多个数据库的Entity框架

时间:2014-05-26 07:18:31

标签: c# entity-framework

我是Entity Framework的新手。我需要做类似下面的事情;

页面加载时,它会显示 database1 table1 的数据 根据从第一页选择的数据,它必须连接到不同的数据库(这些数据库具有相同的名称。但可以有轻微的变化)。 我已经有办法获得与这些不同数据库的连接。

我不知道我应该从哪里开始。请指导我。如果您能为我提供基本的信息和示例,那就很好。

3 个答案:

答案 0 :(得分:0)

您需要为每个数据库创建一个单独的数据库上下文实例,并将连接字符串指定为构造函数参数

var dbContext = new MyDbContext("<connection string>")

如果有固定的连接字符串列表,则它们可以存储在配置文件中,并按名称使用

var dbContext = new MyDbContext("Name=FirstDb")

答案 1 :(得分:0)

您可以将连接字符串提供给DbContext构造函数:

var db1 = new MyContext(connectionString1);
var db2 = new MyContext(connectionString2);

并在上下文中:

public class MyContext : DbContext
{
    public MyContext(string cs) : base(cs) { }
}

答案 2 :(得分:0)

如果您不使用实体模型,则需要2个模型或上下文。 如果你要使用实体模型,那么向导会询问连接字符串,你将创建2个带有2个连接字符串的模型。

我更喜欢该模型,因为它很容易,您在数据库中的更改将在一次更新中处理您的代码点击