55 Stimmen

ASP.NET MVC 3 - Es konnte der angeforderte .Net Framework-Datenanbieter nicht gefunden werden.

Hintergrundinformationen:

Ich benutze Microsoft Visual Web Developer 2010 Express.
Informationen über meine (fehlende) Erfahrung: Das Problem ist im ersten Tutorial aufgetreten, das ich versuche durchzuarbeiten.

Zusätzliche Informationen:

  • Ich bin vertraut mit C#, Postgres, Rails (also MVC & Web-Apps sind mir nicht unbekannt)
  • Ich habe keine Erfahrung mit ASP.NET oder SQL Server

Problem Beschreibung:

Ich versuche genau den Schritten aus dem "Einführung in ASP.NET MVC 3"-Tutorial zu folgen und stoße auf ein Problem bei dem ersten Schritt von Teil 5 - Hinzufügen des MoviesControllers:

Wenn ich versuche, den "MoviesController" mit den exakten Einstellungen hinzuzufügen, die im Tutorial gezeigt werden, und auf 'Hinzufügen' klicke, erhalte ich den folgenden Fehler:

"Metadaten für MvcMovie.Models.Movie konnten nicht abgerufen werden. Der angeforderte .NET Framework-Datenanbieter konnte nicht gefunden werden. Er ist möglicherweise nicht installiert."

Google hat viele Ergebnisse geliefert, als nach dem Satz "Der angeforderte .NET Framework-Datenanbieter konnte nicht gefunden werden" gesucht wurde, aber bisher hat nichts das Problem gelöst.

Was ich versucht habe:

Ich glaube, dass SQL-Server nicht installiert war, also habe ich es aus der Visual Studio Express ISO installiert, bekam einen Fehler, dann habe ich einen Reparaturlauf von der ISO ausgeführt und es wurde behauptet, dass alle 15 Punkte einschließlich der Reparatur von SQL Server Express & .NET 4 Framework erfolgreich durchgeführt wurden.

Ich habe das The_.NET_Framework_Setup_Verification_Tool ausgeführt, das für alles erfolgreich war. http://blogs.msdn.com/b/astebner/archive/2008/10/13/8999004.aspx

Nach der erwähnten Neuinstallation & Reparatur habe ich das Projekt neu erstellt und jeden Schritt wie im Tutorial beschrieben befolgt und den gleichen Fehler erhalten.

Ich fand heraus, dass ich nach DbProviderFactories in der machine.config suchen sollte,

Die Root-Web.config des Projekts enthält die folgenden Einträge

Meine machine config-Datei hat nur einen DbProviderFactories-Eintrag:

dann fand ich das Folgende Zitat

"Wir haben die Art und Weise geändert, wie DbProviderFactories.GetFactoryClasses() die Framework-Anbieter in VS2010 bestimmt. Sie sind nicht mehr in der machine.config-Datei aufgeführt. "

von http://social.msdn.microsoft.com/Forums/en-ZA/adodotnetdataproviders/thread/d79129c4-ae05-4c45-8997-bd90f5765a3a

Frage:

Vielleicht ist das also die falsche Richtung und da ich keine Ahnung habe, was ich als nächstes versuchen soll, welche Schritte sollte ich unternehmen, um dieses Problem zu untersuchen & zu lösen?
Übrigens, ich habe postgres installiert, also wenn es eine einfache Lösung wäre, postgres anstelle von SQL-Server zu verwenden, lassen Sie es mich wissen. Für meine eigenen Projekte würde ich sowieso eine andere Datenbank (wahrscheinlich postgres) verwenden wollen, aber vorerst möchte ich in der Lage sein, das erste und scheinbar einfache Tutorial, das ich ausprobiert habe, erfolgreich abzuschließen.

8 Stimmen

Wenn nur jeder seine Fragen so definiert hätte +1

1 Stimmen

Danke, ich schätze den Kommentar.

0 Stimmen

Ich hatte genau das gleiche Problem, das Gleiche zu tun. Danke.

0voto

user2149040 Punkte 1

Dies hat für mich funktioniert, ich hoffe es hilft

0voto

Charaf JRA Punkte 7939

Nachdem ich andere Diskussionen im Netz gelesen habe, habe ich eine andere Methode gefunden. Wenn Sie die Verbindungszeichenfolge erst hinzufügen, nachdem Sie die Controller-Klasse erstellt haben, funktioniert es auch. Es scheint irgendwie wie ein Fehler zu sein.

0voto

Versuchen Sie dies:

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X