Entity Framework 6 切换数据库提供程序

3
我知道在之前的EF版本中,为了支持MySql和SQL Server,你需要编写自己的ssdl。现在,在EF 6中,SSDL嵌入到edmx中。那么这是否意味着我只需要在我的edmx中添加另一个新提供程序的“Schema”标签?
更新: 所以我尝试在我的ssdl中添加另一个“schema”节点,希望基于连接字符串,EF会知道使用哪个模式。但是这并没有起作用。到目前为止,我能做到的最好的就是注释掉我不使用的DB提供程序的“Schema”标签...虽然不是很好的解决方案,但我感觉这是朝着正确方向迈出的一步。仍然无法动态更改数据库提供程序...
因此,如果我要使用MySql,我将注释掉除MySql“schema”标记之外的所有标记,并更新我的应用程序配置中的连接字符串以指向MySql db。

你试过了吗?它有效吗? - default
我希望在我尝试之前有人已经尝试过它。下周我将开始开发这个功能,完成后我会在这篇文章中进行更新。 - Zeus82
1个回答

3

好的,我已经弄清楚了。原来你只需要定义一个新的SSDL即可。我按照这篇教程进行操作,效果很好。最终我使用了VistaDB和SQL Server。如果你使用的是MySql,请确保数据类型匹配。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接