Nesta aula, vamos falar sobre os possíveis cenários de persistência no Entity Framework (aula anterior).
Existem dois cenários possíveis enquanto estamos persistindo uma entidade usando o Entity Framework:
- Cenário conectado
- Cenário desconectado
O cenário conectado
Este cenário ocorre quando uma entidade é retornada a partir do banco de dados e a persistência é usada no mesmo contexto.
O contexto do objeto não é destruído entre o retorno da entidade e sua persistência.
A entidade é recuperada da base de dados e modificada no mesmo contexto.
O cenário desconectado
Este cenário ocorre quando uma entidade é recuperada a partir de um banco de dados e as entidades alteradas são submetidas em contextos de objetos diferentes.
De acordo com o cenário acima, Context1 é utilizado para operação de leitura e, em seguida, é destruído.
Uma vez que as entidades foram alteradas, a aplicação envia as entidades usando Context2 – um contexto de objeto diferente.
O cenário Desconectado é complexo, porque o novo contexto não sabe nada sobre entidade modificada, de modo que você tem que informar ao contexto o que mudou na entidade.
Na figura, o aplicativo recupera um gráfico de entidades usando Context1 e, em seguida, executa algumas operações CRUD sobre ela; finalmente, ele salva o gráfico das entidades usando Context2.
Nesse cenário, Context2 não sabe quais operações foram realizadas no gráfico das entidades.
Na próxima, aula veremos o CRUD no cenário conectado no Entity Framework.