Compartilhar via


Consultas sem acompanhamento

Eventualmente, pode ser que você queira obter entidades a partir de uma consulta, mas sem que essas entidades sejam acompanhadas pelo contexto. Isso pode gerar um desempenho melhor ao consultar um grande número de entidades em cenários somente leitura. As técnicas mostradas neste tópico se aplicam igualmente a modelos criados com o Code First e com o EF Designer.

Um novo método de extensão AsNoTracking permite que consultas sejam executadas dessa forma. Por exemplo:

using (var context = new BloggingContext())
{
    // Query for all blogs without tracking them
    var blogs1 = context.Blogs.AsNoTracking();

    // Query for some blogs without tracking them
    var blogs2 = context.Blogs
                        .Where(b => b.Name.Contains(".NET"))
                        .AsNoTracking()
                        .ToList();
}