使用MySQL和MSSQL为Entity Framework提供两个不同的数据库

前端之家收集整理的这篇文章主要介绍了使用MySQL和MSSQL为Entity Framework提供两个不同的数据库前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在尝试构建一个web api,它提供来自MySQL数据库或MSsql数据库(完全不同的数据和模式)的数据.它还提供了一些在两者之间移动数据的端点.我已经创建了两个类库来保存两个数据库的EF模型,并且已成功连接到两个实例并针对两个实例运行查询.它倒下的地方是试图访问它们.我必须调整web.config entityFramework部分以使其工作,我无法得到它,以便两者有效地同时工作.我正在使用EF6和最新的MysqL连接器.

这是MSsql实体的工作配置:

MysqL.Data.MysqLClient" type="MysqL.Data.MysqLClient.MysqLProviderServices,MysqL.Data.Entity.EF6" />
  sqlClient" type="System.Data.Entity.sqlServer.sqlProviderServices,EntityFramework.sqlServer" />

这是我尝试使用MysqL实体上下文时产生的错误

The default DbConfiguration instance was used by the Entity Framework before the 'MysqLEFConfiguration' type was discovered. An instance of 'MysqLEFConfiguration' must be set at application start before using any Entity Framework features or must be registered in the application's config file. See http://go.microsoft.com/fwlink/?LinkId=260883 for more information.

这是MysqL实体的工作配置:

MysqL.Data.Entity.MysqLEFConfiguration,MysqL.Data.Entity.EF6">
sqlConnectionFactory,EntityFramework" />
MysqL.Data.MysqLClient" type="MysqL.Data.MysqLClient.MysqLProviderServices,EntityFramework.sqlServer" />  

然后,这就是在尝试使用MysqL库时抱怨连接字符串.我在网上找不到这个,这里的问题很相似,但没有答案:Is it possible to have a EF Context for MySql and SqlServer?

有没有人这样做或知道解决问题的方法

最佳答案
解决错误,我将其放在我的App.config上:“codeConfigurationType”

MysqL.Data.Entity.MysqLEFConfiguration,MysqL.Data.Entity.EF6">

为什么?可能配置不是伪造MysqLEFConfiguration的位置.

我在这里只使用MysqL,我不知道这是否适用于sqlServer和MysqL togueter.

对于您的问题,此链接非常有用:Link

你可以有2个separeted configuration.cs文件.一个用于MysqL,另一个用于MSsql

猜你在找的MySQL相关文章