将实体框架与多个MS SQLSERVER数据库一起使用

b.o*_*.oa 8 c# sql-server

我来回搜索,但似乎无法掌握我需要的东西.如果最近得到回答,我很抱歉.重新定向讨论对我有好处.

这就是场景.我被指示从我的老板那里转移到Microsoft Visual Foxpro(MS正在撤回2015年的支持)到.Net C#.为了良好的基础和最佳实践的采用,我决定先学习,将相关信息拼凑起来,然后开始编码.这是第二年.

我们是一家局公司,为50多个客户提供工资处理外包服务.每个客户端目前都有自己的数据库.数据库具有完全相同结构的表.

我是新手.完全是.net世界的新手.

我从使用数据表,数据加载器的原始SQL开始,但在我的研究中,我得到了一些讨论令人沮丧.许多人认为实体框架应该达到目的.但是,允许混合方法,尤其是涉及复杂查询时.

有人可以指点我一些'好读',我可以用50多个缩进数据库实现Entity Framework.每个数据库都是完全独立的,没有任何其他数据库.当用户登录时,他们选择处理工资单所需的客户端,然后EF指向该数据库.

Nic*_*ler 4

EF 需要 2 条不同的信息来处理数据库中的数据:

1) 数据库模式:它作为编译代码包含在应用程序中,通常不能在运行时更改。

2) 连接字符串:这是在运行时提供的,通常来自配置文件。

在您的情况下,所有数据库都具有相同的架构,因此您只需为一个数据库建模,它将适用于所有其他数据库。

您要更改的部分是连接字符串。这告诉 EF 如何查找数据库并可以在运行时提供。

构造函数有一个重载DbContext,它将连接字符串作为参数:MSDN: DbContext Constructor (String)

框架中甚至还有一些类可以帮助您创建连接字符串:

MSDN: EntityConnectionStringBuilder Class

MSDN: Connection String Builders