Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Existuje několik scénářů, ve kterých můžete chtít načíst entity z databáze do kontextu, aniž byste s těmito entitami museli okamžitě nic dělat. Dobrým příkladem je načítání entit pro datovou vazbu, jak je popsáno v místních datech. Jedním z běžných způsobů, jak toho dosáhnout, je napsat dotaz LINQ a poté na něj zavolat metodu ToList, jen aby byl vytvořený seznam ihned zahozen. Metoda Load extension funguje stejně jako ToList s tím rozdílem, že se vyhne vytvoření seznamu úplně.
Techniky uvedené v tomto tématu platí stejně pro modely vytvořené pomocí Code First a EF Designeru.
Tady jsou dva příklady použití load. První příklad je převzat z aplikace datové vazby Windows Forms, kde se funkce Load používá k dotazování entit před jejich vazbou na místní kolekci, jak je popsáno v části Místní data.
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
_context = new ProductContext();
_context.Categories.Load();
categoryBindingSource.DataSource = _context.Categories.Local.ToBindingList();
}
Druhý příklad ukazuje načtení filtrované kolekce souvisejících entit, jak je popsáno v tématu Načítání souvisejících entit:
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();
}