实体框架6切换DB提供商

本文关键字:DB 提供商 切换 框架 实体 | 更新日期: 2023-09-27 18:13:09

我知道在过去的EF版本中,为了支持MySql和SQL Server,你需要编写自己的ssl。现在在EF 6中,SSDL被嵌入到edmx中。那么,这是否意味着我所要做的就是在我的edmx中为新提供程序添加另一个"Schema"标记?

所以我尝试添加另一个"模式"节点到我的ssdl,希望基于连接字符串,EF会知道使用哪个模式。但这并没有奏效。到目前为止,我能得到的最好的结果是在我的edmx中为我不使用的DB提供程序注释出"Schema"标签。不是一个很好的解决方案,但我觉得这是朝着正确方向迈出的一步。仍然不能在飞行中更改数据库提供程序…

所以基本上,如果我要使用MySql,我会注释掉所有,但MySql"模式"标签和更新连接字符串在我的应用程序配置指向MySql数据库。

实体框架6切换DB提供商

好了,我算出来了。事实证明,您所要做的就是定义一个新的SSDL。我遵循了这个教程,并且效果很好。我最终使用了VistaDB和SQL Server。如果使用MySql

请确保数据类型匹配