2014-11-07 7 views
5

Ich habe eine MVC 5 App, die MySQL-Datenbank in Azure gehostet hat. Es funktioniert alles gut, aber heute, als ich versuchte Update-Datenbank und führen Sie es zu geben, bekam ich folgende Fehlermeldung:Fehler beim Ausführen Update-Datenbank in MVC5

System.Runtime.Serialization.SerializationException: Type is not resolved for member 'MySql.Data.MySqlClient.MySqlException,MySql.Data, Version=6.9.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d'. 
    at System.AppDomain.DoCallBack(CrossAppDomainDelegate callBackDelegate) 
    at System.Data.Entity.Migrations.Design.ToolingFacade.Run(BaseRunner runner) 
    at System.Data.Entity.Migrations.Design.ToolingFacade.Update(String targetMigration, Boolean force) 
    at System.Data.Entity.Migrations.UpdateDatabaseCommand.<>c__DisplayClass2.<.ctor>b__0() 
    at System.Data.Entity.Migrations.MigrationsDomainCommand.Execute(Action command) 
Type is not resolved for member 'MySql.Data.MySqlClient.MySqlException,MySql.Data, Version=6.9.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d'. 

Was kann das Problem sein, und wie kann ich sie lösen?

Antwort

9

hatte ich dieses Problem vor:

1.- Update des MySQL Connector auf die neue Version installieren: http://dev.mysql.com/downloads/connector/net/

2.- Weil Sie auf eine Remote-Installation von MySQL zu verbinden versuchen Sie um sicherzustellen, dass der Port offen ist. Sie können versuchen, eine Verbindung zu einer lokalen MySQL-Datenbank herzustellen, um dies zu überprüfen.

Ich hoffe, dass dies auch für Sie funktioniert.

+0

Dies löste tatsächlich das Problem. Vielen Dank! – tett

3

Für den Fall, jemand anderes auf diesem gestolpert Fehler „Der Typ ist nicht für Mitglied gelöst“:

Diese Meldung sehr irreführend ist, weil es für viele Probleme gezeigt, die nichts mit dem zu tun haben, was man von dieser annehmen kann Botschaft.

Die meiste Zeit habe ich in diese Nachricht hineingelaufen, es war ein Code innerhalb einer Map-Klasse, der während der Ausführung der Seed-Methode eine Ausnahme auslöst. Achten Sie auf benutzerdefinierte ToString() - und GetHashCode() - Implementierungen.

Der VS-Debugger ist in diesem Fall Ihr bester Freund. Fügen Sie einfach den folgenden Code auf Ihre Seed() -Methode:

if (System.Diagnostics.Debugger.IsAttached == false) 
     System.Diagnostics.Debugger.Launch(); 

Starten Sie eine zweite VS-Instanz mit dem Projekt vor dem Update-Befehl Datenbank ausgeführt wird und Sie sollten sehen, was falsch ist.