wake-up-neo.com

Fehler beim Entity Framework - Fehler 11009: Eigenschaft '' wird nicht zugeordnet

Um ein älteres Projekt zu verbessern, zwinge ich die Umstände, VS 2008 und Framework 3.5 zu verwenden. Ich habe Probleme mit dem edmx, die bizarres Verhalten zeigen und die Entitäten nicht nach Bedarf aktualisieren.

Der edmx wirft den obigen Fehler aus, aber wenn ich zur entsprechenden Tabelle gehe und mit der rechten Maustaste darauf klicke - "Modell aus Datenbank aktualisieren", gibt es keine Änderung, der Fehler ist immer noch vorhanden. 

Wenn ich die Tabelle aus dem Diagramm lösche, indem Sie sie auswählen und auf del drücken, verschwindet sie im Modellbrowser aus der Datenbank. Wenn Sie jedoch auf "Modell aus Datenbank aktualisieren" klicken, wird in der Liste "Hinzufügen" nichts angezeigt tun kann ist "Aktualisieren" der Tabelle, da ich sie immer noch in der Aktualisierungsliste sehe (was nicht passieren sollte, da ich sie gelöscht habe!)

42
Amc_rtty

Überprüfen Sie die XML-Datei Ihres Modells. Sie befindet sich wahrscheinlich noch irgendwo dort. Löschen Sie es manuell aus dieser XML-Datei und versuchen Sie es erneut. Nehmen Sie jedoch Sicherungen auf.

46
Thousand

Ich hatte dieses Problem, als ich einen Spaltennamen von CampaignKey in CampaignCode änderte. Nachdem ich die DB-Änderung vorgenommen hatte, ging ich zum Designer .edmx, klickte mit der rechten Maustaste und wählte Update Model aus Datenbank. Beim Kompilieren bekam ich dann den Fehler: 

Fehler 11009: Eigenschaft CampaignKey wird nicht zugeordnet. 

Ein genauerer Blick auf meine Tabelle im Designer zeigte mir, dass Visual Studio das neue Feld CampaignCode wie in der DB erstellt hatte. Es hatte aber auch das alte Feld CampaignKey dort gelassen, was den Fehler verursacht hat, da es nicht mehr in der DB vorhanden ist. 

Um das Problem zu beheben, habe ich im Designer mit der rechten Maustaste auf das CampaignKey-Feld in meiner Tabelle geklickt und Delete ausgewählt. 

Danach habe ich den .edmx gespeichert, kompiliert und der Fehler war weg.

39
tjp69

Ich habe diesen Fehler schon einmal erhalten, wenn Spaltennamen in Tabellen oder Ansichten den Fall ändern. Wenn eine Ansicht beispielsweise eine Spalte mit dem Namen "OrderID" hat und der Spaltenname in "OrderId" geändert wird, wird der Fehler "Property" "OrderID" nicht zugeordnet "ausgegeben. Sie können dieses Problem beheben, indem Sie die Groß-/Kleinschreibung wieder in den Zustand des Modells ändern.

3
Dave

Ich weiß, dass es sich bei dieser Frage um VS 2008 und das "Wiederherstellen" eines Modells handelte, aber für jeden, der dies wie ich fand, als ich den gleichen Fehler 11009 in VS 2015 hatte, habe ich zuerst das "Update Model from Database" ausprobiert Ich habe es schließlich behoben, indem ich mit der rechten Maustaste auf die Modelltabelle im .edmx-Design geklickt und Table Mapping ausgewählt habe. Ich musste das Modell nicht löschen. Mein Modell ist einer DB-Tabelle zugeordnet.

3
hullflyer

Ich habe die EDMX-Datei in Notepad geöffnet und das falsche Feld gelöscht. Ich habe das Modell dann im Designer erneut aktualisiert

2
Chazza

Manchmal führt das Upgrade eines Projekts zu Fehlern.

Stellen Sie nur sicher, dass Sie alle Ihre Daten gesichert haben, nur in diesem Fall.

Wenn wir ein Entitätsmodell in unser Projekt einfügen, wird eine entsprechende Verbindungszeichenfolge zuweb.confighinzugefügt. Wenn Sie jetzt das Modell aus dem Projekt löschen, befindet sich die Verbindungszeichenfolge dort immer noch in der Datei web.config.

Also, mach die folgenden Schritte:

  1. Löschen Sie das Modell
  2. Löschen Sie die entsprechende Verbindungszeichenfolge aus der Datei web.config
  3. Führen Sie nun die Schritte aus, um das Modell von Grund auf neu hinzuzufügen.

Hoffentlich sollte es funktionieren.

2
Viral Jain

Ich hatte den gleichen Fehler, als ich einen Spaltennamen in der Datenbank änderte und die Datenbank vom Modell aus aktualisiert hatte. Ich konnte den ursprünglichen Namen nirgends in der Lösung finden. Ich habe es einfach gelöst 

  1. die Tabelle aus dem Modell löschen (Rechtsklick auf die Tabelle, Löschen), 
  2. aktualisieren des Modells aus der Datenbank (klicken Sie mit der rechten Maustaste auf den Hintergrund von edmx, wählen Sie "Modell aus Datenbank aktualisieren", geänderte Tabelle hinzufügen).
1
CindyH

Ich habe diesen Fehler (Fehler 3007: Problem beim Zuordnen von Fragmenten, die bei Zeilen beginnen ...), nachdem eine Tabelle zu .edmx hinzugefügt wurde

Zuerst lösche ich die zuletzt hinzugefügte Tabelle, dann aktualisiere ich das Modell erneut mit dieser Tabelle, aber das Kontrollkästchen "Include foreing key" markieren:

 enter image description here

0
Condemateguadua

Ich hatte das gleiche Problem mit Visual Studio 2017 und Entity Framework 6 in einem Database First-Modell, nachdem ich es aktualisiert hatte, um neue Spalten zu erhalten. 

Ich habe alles oben ausprobiert, aber das einzige, was funktioniert hat, war, das EDMX zu löschen und ein neues zu generieren. 

0
chakeda