Otrzymuję następujący błąd podczas próby dołączenia obiektu, który jest już dołączony do danego kontekstu za pośrednictwem context.AttachTo(...):
Obiekt z tym samym kluczem już istnieje w ObjectStateManager. ObjectStateManager nie może śledzić wielu obiektów za pomocą tego samego klucza.
Czy istnieje sposób na osiągnięcie czegoś w rodzaju:
context.IsAttachedTo(...)
Twoje zdrowie!
Edytować:
Metoda rozszerzenia, którą przedstawił Jason, jest bliska, ale nie działa w mojej sytuacji.
Próbuję trochę popracować metodą opisaną w odpowiedzi na inne pytanie:
Mój kod wygląda trochę tak:
var user = new User() { Id = 1 };
context.AttachTo("Users", user);
comment.User = user;
context.SaveChanges();
Działa to dobrze, z wyjątkiem sytuacji, gdy robię coś innego dla tego użytkownika, gdzie używam tej samej metody i próbuję dołączyć Userobiekt zastępczy . Nie udaje się to, ponieważ wcześniej dołączyłem ten fikcyjny obiekt użytkownika. Jak mogę to sprawdzić?