Na minha aplicação, tenho uma arquitetura básica, como mostrado:
RepositoryMethods (DO) --> BusinessEngines (DTO) --> Controller (ViewModel)
Eu gosto de manter todo o código de acesso do Entity Framework / DbContext em um único local. Todos os métodos My Repository têm o DbContext injetado e são todos estilo API, em oposição a um repositório genérico:
Task<Post> GetAllPostsInCategory(int categoryId);
Assim, como as entidades (Objetos de Domínio) são convertidas em Objetos de Transferência de Dados e, em seguida, em Exibir Modelos, a estrutura da entidade ainda pode rastreá-los ou devo sempre estar usando .AsNoTracking()
em todo método de repositório? No ponto net core, acho que isso pode ser definido globalmente, estou correto?
Respostas:
1 para resposta № 1Faz sentido se você estiver retornando entidades da API de maneira simples, seu contexto nunca terá a chance de rastrear nada.
No entanto, se você estiver atualizando ou excluindo dados, é melhor mantê-los