2012-04-01 6 views
0

ich die damit verbundene Frage habe hier aufspüren gesehen:Ein Objekt mit demselben Schlüssel existiert bereits im ObjectStateManager. Die Object können nicht mehrere Objekte mit der gleichen Schlüssel

An object with the same key already exists in the ObjectStateManager. The ObjectStateManager cannot track multiple objects with the same key

Aber habe ich noch nicht geladen meine Entität (UserView.Employee) aus dem Kontext überall, wie Sie kann im Codeausschnitt unten sehen.

public ActionResult EditEmployee(UserViewDetailsModel UserView) 
     { 
      UserView.Employee.Contact = db.Contacts.Find(UserView.Employee.Contact.ContactID); 
      UserView.Employee.Manager = db.Employees.Find(UserView.ManagerID); 
      db.Entry(UserView.Employee).State = EntityState.Modified; 
      db.SaveChanges(); 

      return RedirectToAction("Index"); 
     } 

Bitte sagen Sie mir, wie kann ich die Änderungen in diesem Fall speichern?

+0

Jedes Update auf das? – Seany84

Antwort

0

Ich habe VS nicht zur Hand, dies zu testen, aber kann man so etwas versuchen:

db.Entry(UserView.Employee).CurrentValues.SetValues(EntityState.Modified); 
Verwandte Themen