EF6连接SQLSERVER生成的实体模型能否直接被MYSQL使用 10C

项目以前是用EF6和SQLSERVER生成的实体模型,现在需要同时支持mysql和sqlserver,是否可以通过设置来只使用一个实体模型支持两种数据库

3个回答

如果你没有用自定义函数存储过程等,理论上是可以的,分层,实现不同的dal类,分别调用不同的提供程序。为什么说理论上,因为mysql的支持并不好,有不少坑。

可以的,不需要修改实体模型,只需要重新编写数据库处理接口,可以根据配置文件中指定的数据库类型和数据库连接地址对不同的数据库进行操作,至于存储过程你可以先判断是连接的是不是sql server 不是的话,转换成相应数据库的纯sql 语句来操作就可以了,你可以写一个构造相关sql语句的公用扩展类,然后根据配置中指定的数据库构造相应的操作语句,在数据层操作层直接执行sql语句就可以了,根本不会影响你的实体层和逻辑层,所以不需要改动实体层

本人做过的几个项目都是这样的,底层支持多个数据库,都是公用一个实体模型,如果不这样操作,难道还要支持多少个数据库,就要写多少个实体模型,所以很负责任的告诉你,可以的,就是这么操作的

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问