Estou recebendo o seguinte erro ao tentar anexar um objeto que já está anexado a um determinado contexto por meio de context.AttachTo(...)
:
Já existe um objeto com a mesma chave no ObjectStateManager. O ObjectStateManager não pode rastrear vários objetos com a mesma chave.
Existe uma maneira de alcançar algo nos moldes de:
context.IsAttachedTo(...)
Felicidades!
Editar:
O método de extensão descrito por Jason está próximo, mas não funciona na minha situação.
Estou tentando fazer algum trabalho usando o método descrito na resposta a outra pergunta:
Meu código se parece um pouco com este:
var user = new User() { Id = 1 };
context.AttachTo("Users", user);
comment.User = user;
context.SaveChanges();
Isso funciona bem, exceto quando eu faço outra coisa para aquele usuário em que uso o mesmo método e tento anexar um User
objeto fictício . Isso falha porque eu anexei anteriormente esse objeto de usuário fictício. Como posso verificar isso?