Entityframework add
-
Hi
Bin gerade etwas verwirrt.
Ich nutze das entityframework4. Hier habe einen eintrag zu einem DBSet<> hinzugefügt.
_dbContext.Persons.Add(new Person("Peter") );
wenn ich nun _dbContext.Persons.FirstOrDefault() abrufe erhalte null zurück.
schaue ich mir das Objekt im debuger an zeigt der Count 1 an. Wenn ich allerdings die Resultview öffne, steht dort drin keine Objekte zur Auflistung vorhanden. Was mache ich falsch?
-
administratorin schrieb:
Was mache ich falsch?
Du benutzt EF4 obwohl EF6 draussen ist...
Abgesehen davon, hast Du denn nach dem Add auch SaveChanges() aufgerufen?
-
Du benutzt EF4 obwohl EF6 draussen ist...
Ja. Leider. Bleibt mir aber nichts anderes übrig. Auf Unsere Maschinen auf denen die Software laufen muss ist immer noch XP drauf. Somit ist nur EF4 möglich.
SaveChanges speichert die Änderungen in der Datenbank. Nichts desto trotz sollte der Eintrag auch schon vorher in der Collection drin sein.
War bisher so. Irgendwas muss ich wohl geändert haben.
-
administratorin schrieb:
Nichts desto trotz sollte der Eintrag auch schon vorher in der Collection drin sein.
Also ich kenne es nur genau anders. FirstOrDefault liest direkt aus der Datenbank, nicht aus dem lokalen ChangeSet.
Ist auch genau so dokumentiert: http://msdn.microsoft.com/en-us/data/jj592872.aspx
-
Hallo loks.
Richtig. Ich habe meinen Fehler gefunden.
Das war das was ich bisher gemacht habe.
var persons = _dbContext.Persons;
persons.Add(new Person("Peter"));
var x = persons.FirstOrDefault(); // hier erhalte ich nun den Peter zurück.Dann hatte ich umgestellt. Und nicht mehr getestet.
Vielen Dank.