2014-11-01 32 views
0

昨天我安装了MySql 5.7,它包含MySql connector/net。但是今天当我运行MVC4应用程序时,发生错误。服务器显示无法找到dll MySql.Web.v20, Version=6.9.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d,或者系统找不到此文件。.NET MVC4应用程序无法运行,由于MySql

machine.config已被mysql安装程序更改了一些部分,如MySQLMembershipProviderMySQLRoleProvider

你能告诉我什么是问题以及如何解决它?

回答

0

我想这只是一个DLL版本和/或PublicKeyToken不匹配。只需删除对MySql Connector dll的引用,然后再次添加它。

如果错误仍然存​​在,请查看此dll的属性,获取其PublicKeyToken,搜索指向此引用的xml代码(我现在不记得哪里,但是您可以轻松找到Visual Studio的查找工具)并将每个属性设置为与您安装的这个新DLL相匹配。

(这是一个非常好的事情做好备份(甚至一个简单的按Ctrl + C>按Ctrl + V>评论)任何这改变了之前)

希望它能帮助!

0

答案在某种程度上像地狱一样愚蠢,但它的作用像一个魅力(至少在我的情况下)。

正如您所看到的,它正在寻找名为“MySql.Web.v20.dll”的东西。 “MySql.Web.v20.dll”=“MySql.Web.dll”是完全正常的,但事实并非如此。

把这个文件夹中的样子: “C:\ Program Files文件(x86)的\ MySQL的\ Connector.NET 6.9 \大会”

在那里我有4个文件夹,RT,V2.0,V4.0 nad v4.5。当你看到它们中的任何一个时,你会看到它们都包含名为MySql.Web.dll的文件,但只有文件夹v2.0包含MySql.Web.v20.dll。

现在看看VS参考管理器。在mysql中的过滤器类型和结果是相当interesing。我个人有5个MySql.Web条目。当你将鼠标放在每一个上面时,它会向你显示该参考的绝对路径。其中只有一个实际上是MySql.Web.v20.dll。

它修复了我的问题。但我想知道为什么以及如何运作。干杯。

相关问题