Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Existe a possibilidade de recuperar o objeto no estado Detached?

Então, como o instrutor mencionou, enviamos o comando delete e após a mudanças salvas o objeto é "desconectado", ele existe porém não é mais monitorado. Com está descrição, levo a crer que existiria a possibilidade de resgatar este objeto.

4 respostas

Olá Matheus!

Este status de Detached faz com que o sistema "esqueça" a referência do objeto, liberando-o assim para ser coletado pelo Garbage Collector. Isso quer dizer que este status faz a memória referente ao objeto seja liberada.

Mais informações na documentação sobre o método Deatach() (em português) e sobre o que acontece com o objeto ao receber este status (em inglês).

Bons estudos!

solução!

Matheus, vou dar uma resposta diferente do Fabiano pra você avaliar o que melhor te atende.

No EF Core, um objeto com estado Detached está fora do escopo daquele contexto. Ou seja, não está sendo monitorado e qualquer modificação nele não acarretará mais envio de comandos SQL para o banco.

Em relação a sua pergunta sobre se é possível resgatar esse objeto: sim, desde que a instância do contexto continue existindo. A recuperação se dá através de LINQ na coleção retornada pelo método ChangeTracker.Entries().

Espero ter ajudado.

Abraços!

Hahahah! Vivendo e aprendendo! Muito obrigado por mais esse aprendizado!

Matheus, tudo bem? Nossas respostas te ajudaram? Se quiser outros esclarecimentos pergunta aqui por favor. Se estiver satisfeito peço a gentileza de fechar o tópico.

Abraço!