Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Há vários cenários em que talvez você queira carregar entidades do banco de dados no contexto sem fazer nada imediatamente com essas entidades. Um bom exemplo disso é carregar entidades para associação de dados, conforme descrito em Dados Locais. Uma maneira comum de fazer isso é escrever uma consulta LINQ e, em seguida, chamar ToList nela, apenas para descartar imediatamente a lista criada. O método de extensão Load funciona exatamente como ToList, exceto por evitar a criação da lista completamente.
As técnicas mostradas neste tópico se aplicam igualmente aos modelos criados com o Code First e o Designer EF.
Aqui estão dois exemplos de como usar o Load. O primeiro é obtido de um aplicativo de associação de dados do Windows Forms em que o Load é usado para consultar entidades antes de associar à coleção local, conforme descrito em Dados Locais:
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
_context = new ProductContext();
_context.Categories.Load();
categoryBindingSource.DataSource = _context.Categories.Local.ToBindingList();
}
O segundo exemplo mostra como usar Load para carregar uma coleção filtrada de entidades relacionadas, conforme descrito no carregamento de entidades relacionadas:
using (var context = new BloggingContext())
{
var blog = context.Blogs.Find(1);
// Load the posts with the 'entity-framework' tag related to a given blog
context.Entry(blog)
.Collection(b => b.Posts)
.Query()
.Where(p => p.Tags.Contains("entity-framework"))
.Load();
}