Объект с таким же ключом уже существует в ObjectStateManager. ObjectStateManager не может отслеживать несколько объектов с одним и тем же ключом - PullRequest
0 голосов
/ 01 апреля 2012

Я видел связанный с этим вопрос здесь:

Объект с таким же ключом уже существует в ObjectStateManager.ObjectStateManager не может отслеживать несколько объектов с одним и тем же ключом

Но я еще нигде не загружал свою сущность (UserView.Employee) из контекста, как вы можете видеть в фрагменте кода ниже.

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");
        }

Подскажите, пожалуйста, как мне сохранить изменения в этом случае?

1 Ответ

0 голосов
/ 01 апреля 2012

У меня нет VS, чтобы проверить это, но вы можете попробовать что-то вроде:

db.Entry(UserView.Employee).CurrentValues.SetValues(EntityState.Modified);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...