Ich habe ein Klassenbibliotheksprojekt erstellt, das das Entitätsrahmenobjekt enthält, das für den gemeinsamen Datenzugriffslayer für mein Mehrfachprojekt verantwortlich ist. Nach dem Hinzufügen der generierten DLL-Datei zu meinem Domänenprojekt und dem Verwenden des Entitätsobjekts aus dem Klassenbibliotheksprojekt Ich bin mit dem folgenden Problem konfrontiert.
In der Konfigurationsdatei der Anwendung wurde keine Verbindungszeichenfolge mit dem Namen 'ABC' gefunden.
Ich habe die Metadaten-Artefakt-Verarbeitungseigenschaft von edmx auf In Ausgabe-Assembly einbetten
festgelegtApp.Config-Markup
%Vor%Und Entitäten Code sind wie folgt
%Vor%noch eine Sache, ich zugreife Datenbank von datadirectoriory "App_Data"
Ich verweise auf den Blog von dotnetcurry.com.
Vielen Dank im Voraus!
Basierend auf dem Link , den Sie angegeben haben, vermissen Sie wahrscheinlich diesen Teil.
Nun können Sie in diesem Projekt entweder Ihre eigene .config-Datei erstellen Fügen Sie den Connectionstring-Eintrag Ihres Modells hinzu oder einfach kopieren die App.config-Datei, die Sie im MyEntityModel-Projekt erstellt haben, in Ihr Konsolen-App-Projekt. Wir werden den einfacheren Weg annehmen. Rechtsklick das Projekt & gt; Vorhandenes Element hinzufügen & gt; Gehe zum MyEntityModel-Projekt und Fügen Sie die Datei App.config hinzu.
Erläuterung:
Wenn Sie eine Bibliothek erstellen und die Bibliothek von einem anderen Projekt referenziert wird, liest EF die Konfiguration, die sich auf das Startprojekt bezieht. Sie können einen der folgenden Schritte ausführen.
Ich habe daran gearbeitet, eine Klassenbibliothek zu erstellen, die alle Funktionen von EF (Entity Framework) implementiert und den in beschriebenen Prozess befolgt Ссылка aber es gab immer noch Fehler.
Das Problem lag in der fehlenden Übereinstimmung zwischen dem EF-Framework und dem .Net-Framework. Ich habe .Net Framework 5.0 verwendet, aber EF Version war 6.0. Nach der Aktualisierung der neuesten Version von .Net-Framework hat alles gut funktioniert. Immer sicherstellen, dass EF und Dll Version + EF und Testprojektversionen immer gleich sind.
Ich habe auch EFTools6.1.3ForVS2013 heruntergeladen und installiert, wenn das irgendjemandem hilft. Eine andere Sache, an die Sie sich erinnern sollten, ist, dass Sie Entity Framework von Nuget in allen Projekten installieren müssen, die auf EF Dll verweisen, und Verbindungszeichenfolge aus der Dll-Konfigurationsdatei in der Konfigurationsdatei des Testprojekts kopieren.
Hoffe das hilft jemandem !!! Danke,
Ändern Sie den Namen der Entitätsverbindungszeichenfolge, die Sie im Konstruktor Ihrer Kontextklasse verwenden:
%Vor% Stellen Sie sicher, dass Ihre Anwendungskonfigurationsdatei zu der Assembly hinzugefügt wurde, in der Sie Ihren Code ausführen, d. h. app.config
Ihres PE von web.config
Ihrer Website
Kopieren Sie Ihre SQL-Verbindungszeichenfolge aus der Konfigurationsdatei des Bibliotheksprojekts und fügen Sie sie in die Konfigurationsdatei des Hauptprojekts ein, die Ihr Startprojekt ist. Welches dein Problem lösen wird.
Kopieren Sie auch DbProviderFactories aus dem Bibliotheksprojekt in die Konfigurationsdatei des Hauptprojekts.
Tags und Links asp.net-mvc wcf c# entity-framework service