Я получаю следующую ошибку при попытке присоединить объект, который уже прикреплен к данному контексту через context.AttachTo(...)
:
Объект с тем же ключом уже существует в ObjectStateManager. ObjectStateManager не может отслеживать несколько объектов с одним и тем же ключом.
Есть ли способ достичь чего-то по строкам:
context.IsAttachedTo(...)
Ура!
Edit:
Метод расширения, обозначенный Джейсоном, близок, но он не работает для моей ситуации.
Я пытаюсь выполнить некоторую работу, используя метод, описанный в ответе на другой вопрос:
Мой код выглядит примерно так:
var user = new User() { Id = 1 };
context.AttachTo("Users", user);
comment.User = user;
context.SaveChanges();
Это отлично работает, за исключением случаев, когда я делаю что-то еще для этого пользователя, где я использую тот же метод и пытаюсь прикрепить фиктивный объект User
. Это не удается, потому что я ранее прикреплял этот фиктивный пользовательский объект. Как я могу проверить это?