C# 无法将运行时连接字符串转换为其设计时等效字符串

C# 无法将运行时连接字符串转换为其设计时等效字符串,c#,entity-framework,visual-studio-2013,C#,Entity Framework,Visual Studio 2013,我上周更新到Visual Studio 2013,无法再通过Visual Studio设计器(.edmx文件)更新实体数据模型 当我右键单击>从数据库更新模型时我现在收到此错误: 运行时发生“System.ArgumentException”类型的异常 正在尝试从数据库更新。例外消息是: '无法将运行时连接字符串转换为其设计时 相等的连接字符串:server=192.168.100.103;用户 id=xxx;密码=xxx;数据库=xxx;持久安全信息=True' 我的连接字符串如下所示:

我上周更新到Visual Studio 2013,无法再通过Visual Studio设计器(.edmx文件)更新实体数据模型

当我
右键单击>从数据库更新模型时
我现在收到此错误

运行时发生“System.ArgumentException”类型的异常 正在尝试从数据库更新。例外消息是: '无法将运行时连接字符串转换为其设计时 相等的连接字符串:server=192.168.100.103;用户 id=xxx;密码=xxx;数据库=xxx;持久安全信息=True'

我的连接字符串如下所示:

  <connectionStrings>
<add name="DbEntities" connectionString="metadata=res://*/Db.csdl|res://*/Db.ssdl|res://*/Db.msl;provider=MySql.Data.MySqlClient;provider connection string=&quot;server=192.168.100.103;user id=xxx;password=xxx;database=xxx;persist security info=True&quot;" providerName="System.Data.EntityClient" />


这个过程在Visual Studio 2012中仍然可以正常工作

显然MySql和Visual Studio 2013还没有协同工作

以下是MySql论坛上的链接:

您可能需要等待MySql连接器的下一个版本


我甚至无法在VisualStudio2013中从服务器爆炸器创建到MySql DB的连接。可以吗?

我在SQL Server Compact Edition上也遇到了类似的问题。尽管上面暗示了这一点,但我将明确指出:我的答案是在VS2012中启动它,并按照与我在VS2013中尝试的相同步骤从.edmx生成数据库。

您需要下载Mysql connector 6.8.3.0和Mysql for Visual Studio 1.1.1()


在那之后,它对我起了作用。

现在有一个新产品用于此:


为我工作

您很可能正在使用旧版本的MYSQL for VS,或者没有安装任何MYSQL。 只需安装/更新MySQL for visual studio 在这里:


这对我很有效

我在Oracle上也收到了此错误消息。我之前安装了OracleODT,以使VisualStudio与旧数据库一起工作。然而,当我们迁移到12.2服务器时,我将工具的ODT版本从12.1升级到了12.2。就在那时,我开始出现上述错误


对我来说,修复方法是更新machine.config。将对旧驱动程序版本的所有引用更改为新驱动程序版本。在我的例子中,我将Oracle.ManagedDataAccess从4.121.1.0更新为4.122.1.0

你是不是先发代码?可能是因为连接字符串的格式和提供程序。是否移动了edmx?那些
res:
引用在运行时指向已编译程序集中的资源。@Saeednamati关于如何更改它有什么建议吗?我根本没有改变我的计划。这是DB的第一款,而且在中国似乎仍能正常工作2013@James不,我没有移动它。DB模型被分解成一个单独的项目。真正不同的是,我尝试使用VS2013Rebuild更新它,在解决方案中重建所有项目,确保引用仍然完整。这似乎是问题的根源。我不应该假设连接器与VS 2013一起工作。一旦我创建了一个新项目并尝试使用MySql,我就无法在AddConnection中看到提供程序。我还下载了MySql for Visual Studio安装程序,但它似乎仍然不起作用。我真的很郁闷,但在他们增加支持之前,我会袖手旁观。同样的事情也发生在我从2013年到2015年的比赛中。我必须回到VS 2013只是为了刷新/更新模型,然后我可以回到VS 2105…哦,好吧。这是Sql CE和VS2013的一个合法错误-请看:谢谢Pawel。它现在显示6.1版本中的修复,我们需要等待。根据链接,显然VS2013已经放弃了对SQL CE的支持,现在他们只是抛出了一个更具描述性的错误。