DbSet<TEntity> Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
DbSet<TEntity>Lze použít k dotazování a ukládání instancí TEntity .
Dotazy LINQ proti a DbSet<TEntity> budou přeloženy do dotazů na databázi.
Výsledky dotazu LINQ proti a DbSet<TEntity> budou obsahovat výsledky vrácené z databáze a nemusí odrážet změny provedené v kontextu, které nebyly uloženy do databáze. Například výsledky nebudou obsahovat nově přidané entity a stále můžou obsahovat entity, které jsou označené k odstranění.
V závislosti na použité databázi může být některé části dotazu LINQ proti typu DbSet<TEntity> vyhodnoceny v paměti, nikoli v případě překladu do databázového dotazu.
DbSet<TEntity> objekty jsou obvykle získávány z DbSet<TEntity> vlastnosti odvozené DbContext nebo z Set<TEntity>() metody.
public abstract class DbSet<TEntity> : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<IServiceProvider>, Microsoft.EntityFrameworkCore.Query.Internal.IAsyncEnumerableAccessor<TEntity>, System.Collections.Generic.IEnumerable<TEntity>, System.Linq.IQueryable<TEntity> where TEntity : class
public abstract class DbSet<TEntity> : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<IServiceProvider>, Microsoft.EntityFrameworkCore.Query.Internal.IAsyncEnumerableAccessor<TEntity>, System.Collections.Generic.IEnumerable<TEntity>, System.ComponentModel.IListSource, System.Linq.IQueryable<TEntity> where TEntity : class
public abstract class DbSet<TEntity> : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<IServiceProvider>, System.Collections.Generic.IAsyncEnumerable<TEntity>, System.Collections.Generic.IEnumerable<TEntity>, System.ComponentModel.IListSource, System.Linq.IQueryable<TEntity> where TEntity : class
type DbSet<'Entity (requires 'Entity : null)> = class
interface IQueryable<'Entity (requires 'Entity : null)>
interface seq<'Entity (requires 'Entity : null)>
interface IEnumerable
interface IQueryable
interface IAsyncEnumerableAccessor<'Entity (requires 'Entity : null)>
interface IInfrastructure<IServiceProvider>
type DbSet<'Entity (requires 'Entity : null)> = class
interface IQueryable<'Entity (requires 'Entity : null)>
interface seq<'Entity (requires 'Entity : null)>
interface IEnumerable
interface IQueryable
interface IAsyncEnumerableAccessor<'Entity (requires 'Entity : null)>
interface IInfrastructure<IServiceProvider>
interface IListSource
type DbSet<'Entity (requires 'Entity : null)> = class
interface IQueryable<'Entity (requires 'Entity : null)>
interface seq<'Entity (requires 'Entity : null)>
interface IEnumerable
interface IQueryable
interface IAsyncEnumerable<'Entity (requires 'Entity : null)>
interface IInfrastructure<IServiceProvider>
interface IListSource
Public MustInherit Class DbSet(Of TEntity)
Implements IAsyncEnumerableAccessor(Of TEntity), IEnumerable(Of TEntity), IInfrastructure(Of IServiceProvider), IQueryable(Of TEntity)
Public MustInherit Class DbSet(Of TEntity)
Implements IAsyncEnumerableAccessor(Of TEntity), IEnumerable(Of TEntity), IInfrastructure(Of IServiceProvider), IListSource, IQueryable(Of TEntity)
Public MustInherit Class DbSet(Of TEntity)
Implements IAsyncEnumerable(Of TEntity), IEnumerable(Of TEntity), IInfrastructure(Of IServiceProvider), IListSource, IQueryable(Of TEntity)
Parametry typu
- TEntity
Typ entity, na které je tato sada provozována.
- Dědičnost
-
DbSet<TEntity>
- Odvozené
- Implementuje
-
IInfrastructure<IServiceProvider> Microsoft.EntityFrameworkCore.Query.Internal.IAsyncEnumerableAccessor<TEntity> IEnumerable<T> IEnumerable<TEntity> IEnumerable IQueryable IQueryable<TEntity> IListSource IAsyncEnumerable<TEntity>
Konstruktory
| DbSet<TEntity>() |
Vlastnosti
| EntityType |
IEntityTypeMetadata přidružená k této sadě |
| Local |
Získá LocalView<TEntity> , který představuje místní zobrazení všech přidaných, nezměněných a upravených entit v této sadě. Toto místní zobrazení zůstane synchronizované, protože entity jsou přidány nebo odebrány z tohoto kontextu. Podobně přidávané nebo odebrané entity z místního zobrazení se automaticky přidají nebo odeberou z tohoto kontextu. Tuto vlastnost lze použít pro datové vazby naplněním sady daty, například pomocí Load<TSource>(IQueryable<TSource>) metody rozšíření a následným vytvořením vazby na místní data prostřednictvím této vlastnosti voláním ToObservableCollection() pro vazbu WPF nebo ToBindingList() pro WinForms. |
Metody
| Add(TEntity) |
Začne sledovat danou entitu a všechny další dosažitelné entity, které ještě nejsou sledovány, ve Added stavu, v jakém budou vloženy do databáze při SaveChanges() volání. Slouží State k nastavení stavu pouze jedné entity. |
| AddAsync(TEntity, CancellationToken) |
Začne sledovat danou entitu a všechny další dosažitelné entity, které ještě nejsou sledovány, ve Added stavu, v jakém budou vloženy do databáze při SaveChanges() volání. Tato metoda je asynchronní pouze pro povolení generátorů speciální hodnoty, jako je například ta, kterou používá Microsoft. EntityFrameworkCore. Metadata. SqlServerValueGenerationStrategy. SequenceHiLo, pro asynchronní přístup k databázi. Pro všechny ostatní případy by se měla použít neasynchronní metoda. Slouží State k nastavení stavu pouze jedné entity. |
| AddRange(IEnumerable<TEntity>) |
Spustí sledování daných entit a všechny další dosažitelné entity, které ještě nejsou sledovány, ve Added stavu tak, že budou vloženy do databáze při SaveChanges() volání. |
| AddRange(TEntity[]) |
Spustí sledování daných entit a všechny další dosažitelné entity, které ještě nejsou sledovány, ve Added stavu tak, že budou vloženy do databáze při SaveChanges() volání. |
| AddRangeAsync(IEnumerable<TEntity>, CancellationToken) |
Spustí sledování daných entit a všechny další dosažitelné entity, které ještě nejsou sledovány, ve Added stavu tak, že budou vloženy do databáze při SaveChanges() volání. Tato metoda je asynchronní pouze pro povolení generátorů speciální hodnoty, jako je například ta, kterou používá Microsoft. EntityFrameworkCore. Metadata. SqlServerValueGenerationStrategy. SequenceHiLo, pro asynchronní přístup k databázi. Pro všechny ostatní případy by se měla použít neasynchronní metoda. |
| AddRangeAsync(TEntity[]) |
Spustí sledování daných entit a všechny další dosažitelné entity, které ještě nejsou sledovány, ve Added stavu tak, že budou vloženy do databáze při SaveChanges() volání. Tato metoda je asynchronní pouze pro povolení generátorů speciální hodnoty, jako je například ta, kterou používá Microsoft. EntityFrameworkCore. Metadata. SqlServerValueGenerationStrategy. SequenceHiLo, pro asynchronní přístup k databázi. Pro všechny ostatní případy by se měla použít neasynchronní metoda. |
| AsAsyncEnumerable() |
Vrátí tento objekt zadaný jako IAsyncEnumerable<T> . Toto je pohodlnější metoda pro pomoc s nejasností rozšiřujících metod ve stejném oboru názvů, který rozšiřuje obě rozhraní. |
| AsQueryable() |
Vrátí tento objekt zadaný jako IQueryable<T> . Toto je pohodlnější metoda pro pomoc s nejasností rozšiřujících metod ve stejném oboru názvů, který rozšiřuje obě rozhraní. |
| Attach(TEntity) |
Začne sledovat danou entitu a položky dosažitelné z dané entity Unchanged ve výchozím nastavení, ale v případě použití jiného stavu se zobrazí níže. Obecně platí, že žádná interakce databáze nebude provedena, dokud SaveChanges() nebude volána. Budou provedeny rekurzivní hledání vlastností navigace, aby bylo možné najít dosažitelné entity, které nejsou již sledovány kontextem. Všechny nalezené entity budou sledovány kontextem. U typů entit s generovanými klíči, pokud má entita nastavenou hodnotu primárního klíče, bude sledována ve Unchanged stavu. Pokud hodnota primárního klíče není nastavená, bude sledována ve Added stavu. To pomáhá zajistit, aby se vložily jenom nové entity. Entita se považuje za hodnotu nastavenou jako primární klíč, pokud je vlastnost primárního klíče nastavena na jinou hodnotu než CLR výchozí pro typ vlastnosti. U typů entit bez generovaných klíčů je stavová sada vždy Unchanged . Slouží State k nastavení stavu pouze jedné entity. |
| AttachRange(IEnumerable<TEntity>) |
Spustí sledování daných entit a záznamů dosažitelných z daných entit ve Unchanged výchozím nastavení, ale v případě použití jiného stavu se zobrazí níže. Obecně platí, že žádná interakce databáze nebude provedena, dokud SaveChanges() nebude volána. Budou provedeny rekurzivní hledání vlastností navigace, aby bylo možné najít dosažitelné entity, které nejsou již sledovány kontextem. Všechny nalezené entity budou sledovány kontextem. U typů entit s generovanými klíči, pokud má entita nastavenou hodnotu primárního klíče, bude sledována ve Unchanged stavu. Pokud hodnota primárního klíče není nastavená, bude sledována ve Added stavu. To pomáhá zajistit, aby se vložily jenom nové entity. Entita se považuje za hodnotu nastavenou jako primární klíč, pokud je vlastnost primárního klíče nastavena na jinou hodnotu než CLR výchozí pro typ vlastnosti. U typů entit bez generovaných klíčů je stavová sada vždy Unchanged . Slouží State k nastavení stavu pouze jedné entity. |
| AttachRange(TEntity[]) |
Spustí sledování daných entit a záznamů dosažitelných z daných entit ve Unchanged výchozím nastavení, ale v případě použití jiného stavu se zobrazí níže. Obecně platí, že žádná interakce databáze nebude provedena, dokud SaveChanges() nebude volána. Budou provedeny rekurzivní hledání vlastností navigace, aby bylo možné najít dosažitelné entity, které nejsou již sledovány kontextem. Všechny nalezené entity budou sledovány kontextem. U typů entit s generovanými klíči, pokud má entita nastavenou hodnotu primárního klíče, bude sledována ve Unchanged stavu. Pokud hodnota primárního klíče není nastavená, bude sledována ve Added stavu. To pomáhá zajistit, aby se vložily jenom nové entity. Entita se považuje za hodnotu nastavenou jako primární klíč, pokud je vlastnost primárního klíče nastavena na jinou hodnotu než CLR výchozí pro typ vlastnosti. U typů entit bez generovaných klíčů je stavová sada vždy Unchanged . Slouží State k nastavení stavu pouze jedné entity. |
| Find(Object[]) |
Najde entitu s danými hodnotami primárního klíče. Pokud je entita s danými hodnotami primárního klíče sledována kontextem, je vrácena okamžitě bez požadavku na databázi. V opačném případě se dotaz provede v databázi pro entitu s danými hodnotami primárního klíče a tato entita, pokud je nalezena, je připojená k kontextu a vrácena. Pokud se nenajde žádná entita, vrátí se hodnota null. |
| FindAsync(Object[]) |
Najde entitu s danými hodnotami primárního klíče. Pokud je entita s danými hodnotami primárního klíče sledována kontextem, je vrácena okamžitě bez požadavku na databázi. V opačném případě se dotaz provede v databázi pro entitu s danými hodnotami primárního klíče a tato entita, pokud je nalezena, je připojená k kontextu a vrácena. Pokud se nenajde žádná entita, vrátí se hodnota null. |
| FindAsync(Object[], CancellationToken) |
Najde entitu s danými hodnotami primárního klíče. Pokud je entita s danými hodnotami primárního klíče sledována kontextem, je vrácena okamžitě bez požadavku na databázi. V opačném případě se dotaz provede v databázi pro entitu s danými hodnotami primárního klíče a tato entita, pokud je nalezena, je připojená k kontextu a vrácena. Pokud se nenajde žádná entita, vrátí se hodnota null. |
| Remove(TEntity) |
Začne sledovat danou entitu ve Deleted stavu tak, že bude při volání z databáze odebrána SaveChanges() . |
| RemoveRange(IEnumerable<TEntity>) |
Spustí sledování daných entit ve Deleted stavu tak, aby se při volání z databáze odebraly SaveChanges() . |
| RemoveRange(TEntity[]) |
Spustí sledování daných entit ve Deleted stavu tak, aby se při volání z databáze odebraly SaveChanges() . |
| Update(TEntity) |
Začne sledovat danou entitu a položky dosažitelné z dané entity Modified ve výchozím nastavení, ale v případě použití jiného stavu se zobrazí níže. Obecně platí, že žádná interakce databáze nebude provedena, dokud SaveChanges() nebude volána. Budou provedeny rekurzivní hledání vlastností navigace, aby bylo možné najít dosažitelné entity, které nejsou již sledovány kontextem. Všechny nalezené entity budou sledovány kontextem. U typů entit s generovanými klíči, pokud má entita nastavenou hodnotu primárního klíče, bude sledována ve Modified stavu. Pokud hodnota primárního klíče není nastavená, bude sledována ve Added stavu. Tím se zajistí, že se budou vkládat nové entity, zatímco existující entity se aktualizují. Entita se považuje za hodnotu nastavenou jako primární klíč, pokud je vlastnost primárního klíče nastavena na jinou hodnotu než CLR výchozí pro typ vlastnosti. U typů entit bez generovaných klíčů je stavová sada vždy Modified . Slouží State k nastavení stavu pouze jedné entity. |
| UpdateRange(IEnumerable<TEntity>) |
Spustí sledování daných entit a záznamů dosažitelných z daných entit ve Modified výchozím nastavení, ale v případě použití jiného stavu se zobrazí níže. Obecně platí, že žádná interakce databáze nebude provedena, dokud SaveChanges() nebude volána. Budou provedeny rekurzivní hledání vlastností navigace, aby bylo možné najít dosažitelné entity, které nejsou již sledovány kontextem. Všechny nalezené entity budou sledovány kontextem. U typů entit s generovanými klíči, pokud má entita nastavenou hodnotu primárního klíče, bude sledována ve Modified stavu. Pokud hodnota primárního klíče není nastavená, bude sledována ve Added stavu. Tím se zajistí, že se budou vkládat nové entity, zatímco existující entity se aktualizují. Entita se považuje za hodnotu nastavenou jako primární klíč, pokud je vlastnost primárního klíče nastavena na jinou hodnotu než CLR výchozí pro typ vlastnosti. U typů entit bez generovaných klíčů je stavová sada vždy Modified . Slouží State k nastavení stavu pouze jedné entity. |
| UpdateRange(TEntity[]) |
Spustí sledování daných entit a záznamů dosažitelných z daných entit ve Modified výchozím nastavení, ale v případě použití jiného stavu se zobrazí níže. Obecně platí, že žádná interakce databáze nebude provedena, dokud SaveChanges() nebude volána. Budou provedeny rekurzivní hledání vlastností navigace, aby bylo možné najít dosažitelné entity, které nejsou již sledovány kontextem. Všechny nalezené entity budou sledovány kontextem. U typů entit s generovanými klíči, pokud má entita nastavenou hodnotu primárního klíče, bude sledována ve Modified stavu. Pokud hodnota primárního klíče není nastavená, bude sledována ve Added stavu. Tím se zajistí, že se budou vkládat nové entity, zatímco existující entity se aktualizují. Entita se považuje za hodnotu nastavenou jako primární klíč, pokud je vlastnost primárního klíče nastavena na jinou hodnotu než CLR výchozí pro typ vlastnosti. U typů entit bez generovaných klíčů je stavová sada vždy Modified . Slouží State k nastavení stavu pouze jedné entity. |
Explicitní implementace rozhraní
| IAsyncEnumerable<TEntity>.GetAsyncEnumerator(CancellationToken) |
Vrátí hodnotu IAsyncEnumerator<T> , která se při výčtu asynchronně spustí dotaz na databázi. |
| IAsyncEnumerableAccessor<TEntity>.AsyncEnumerable |
Vrátí hodnotu IAsyncEnumerable<T> , která při výčtu asynchronně spustí dotaz na databázi. |
| IEnumerable.GetEnumerator() |
Vrátí IEnumerator , který při výčtu spustí dotaz na databázi, aby se načetly všechny entity z databáze. |
| IEnumerable<TEntity>.GetEnumerator() |
Vrátí IEnumerator<T> , který při výčtu spustí dotaz na databázi, aby se načetly všechny entity z databáze. |
| IInfrastructure<IServiceProvider>.Instance |
Načte obor, který se IServiceProvider používá k překladu služeb. Tato vlastnost je určená pro použití v rozšiřujících metodách, které potřebují používat služby, které nejsou přímo vystavené na veřejné ploše rozhraní API. |
| IListSource.ContainsListCollection |
Načte hodnotu, která označuje, jestli je kolekce kolekcí objektů System. Collections. IList.
Vždy vrátí hodnotu |
| IListSource.GetList() |
Tato metoda je volána rozhraními datových vazeb při pokusu o vytvoření vazby dat přímo na DbSet<TEntity> . Tato implementace vždy vyvolá výjimku, protože vazba přímo na a DbSet<TEntity> bude mít za následek odeslání dotazu do databáze pokaždé, když architektura datových vazeb vyžaduje obsah kolekce. Místo toho načtěte výsledky do kontextu, například pomocí Load<TSource>(IQueryable<TSource>) metody rozšíření, a potom vytvořte vazbu na místní data prostřednictvím Local voláním ToObservableCollection() pro vazbu WPF nebo ToBindingList() pro WinForms. |
| IQueryable.ElementType |
Získá typ elementu IQueryable. |
| IQueryable.Expression |
Získá výraz IQueryable LINQ. |
| IQueryable.Provider |
Získá poskytovatele IQueryable. |
Metody rozšíření
| WithPartitionKey<TEntity>(IQueryable<TEntity>, String) |
Zadejte klíč oddílu pro oddíl použitý pro dotaz. Vyžaduje se při použití tokenu prostředku, který poskytuje oprávnění na základě klíče oddílu pro ověřování. |
| AllAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken) |
Asynchronně určuje, zda všechny prvky sekvence splní podmínku. |
| AnyAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken) |
Asynchronně určuje, zda kterýkoli prvek sekvence splňuje podmínku. |
| AnyAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně určuje, zda sekvence obsahuje nějaké prvky. |
| AsAsyncEnumerable<TSource>(IQueryable<TSource>) |
Vrátí IAsyncEnumerable<T> , který lze vyčíslit asynchronně. |
| AsNoTracking<TEntity>(IQueryable<TEntity>) |
Sledování změn nebude sledovat žádnou entitu, která je vrácena z dotazu LINQ. Pokud jsou instance entit změněny, nebude tato operace rozpoznána nástrojem Sledování změn a nebude je SaveChanges() uchovávat pro tyto změny v databázi. Vypnutí sledování změn je užitečné pro scénáře, které jsou jen pro čtení, protože brání režii při nastavování sledování změn pro každou instanci entity. Sledování změn byste neměli zakazovat, pokud chcete manipulovat s instancemi entit a zachovat tyto změny v databázi pomocí SaveChanges() . Překlad identity nebude proveden. Pokud se entita s daným klíčem nachází v jiném výsledku v sadě výsledků, budou se jednat o různé instance. Výchozí chování při sledování dotazů lze řídit pomocí QueryTrackingBehavior . |
| AsNoTrackingWithIdentityResolution<TEntity>(IQueryable<TEntity>) |
Sledování změn nebude sledovat žádnou entitu, která je vrácena z dotazu LINQ. Pokud jsou instance entit změněny, nebude tato operace rozpoznána nástrojem Sledování změn a nebude je SaveChanges() uchovávat pro tyto změny v databázi. Vypnutí sledování změn je užitečné pro scénáře, které jsou jen pro čtení, protože brání režii při nastavování sledování změn pro každou instanci entity. Sledování změn byste neměli zakazovat, pokud chcete manipulovat s instancemi entit a zachovat tyto změny v databázi pomocí SaveChanges() . Bude provedeno rozlišení identity, aby se zajistilo, že všechny výskyty entity s daným klíčem v sadě výsledků jsou reprezentovány stejnou instancí entity. Výchozí chování při sledování dotazů lze řídit pomocí QueryTrackingBehavior . |
| AsTracking<TEntity>(IQueryable<TEntity>) |
Vrátí nový dotaz, ve kterém sledování změn bude sledovat změny všech vrácených entit. Všechny úpravy instancí entit budou v průběhu databáze zjištěny a uchovány SaveChanges() . Výchozí chování při sledování dotazů lze řídit pomocí QueryTrackingBehavior . |
| AsTracking<TEntity>(IQueryable<TEntity>, QueryTrackingBehavior) |
Vrátí nový dotaz, ve kterém bude sledování změn sledovat změny nebo ne pro všechny vrácené entity, v závislosti na hodnotě parametru stop. Při sledování budou všechny změny instancí entit zjištěny a uchovány v databázi během SaveChanges() . Pokud nesledujete, pokud jsou instance entit změněny, nebude tato funkce rozpoznána nástrojem Change Tracking a nebude je SaveChanges() uchovávat pro tyto změny v databázi. Vypnutí sledování změn je užitečné pro scénáře, které jsou jen pro čtení, protože brání režii při nastavování sledování změn pro každou instanci entity. Sledování změn byste neměli zakazovat, pokud chcete manipulovat s instancemi entit a zachovat tyto změny v databázi pomocí SaveChanges() . Výchozí chování při sledování dotazů lze řídit pomocí QueryTrackingBehavior . |
| AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>, CancellationToken) |
Asynchronně vypočítá průměr sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>, CancellationToken) |
Asynchronně vypočítá průměr sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>, CancellationToken) |
Asynchronně vypočítá průměr sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>, CancellationToken) |
Asynchronně vypočítá průměr sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>, CancellationToken) |
Asynchronně vypočítá průměr sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>, CancellationToken) |
Asynchronně vypočítá průměr sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>, CancellationToken) |
Asynchronně vypočítá průměr sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>, CancellationToken) |
Asynchronně vypočítá průměr sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>, CancellationToken) |
Asynchronně vypočítá průměr sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| AverageAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>, CancellationToken) |
Asynchronně vypočítá průměr sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| ContainsAsync<TSource>(IQueryable<TSource>, TSource, CancellationToken) |
Asynchronně určuje, zda sekvence obsahuje zadaný element pomocí výchozí porovnávače rovnosti. |
| CountAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken) |
Asynchronně vrátí počet prvků v sekvenci, které splní podmínku. |
| CountAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vrátí počet prvků v sekvenci. |
| FirstAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken) |
Asynchronně vrátí první prvek sekvence, která splňuje zadanou podmínku. |
| FirstAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vrátí první prvek sekvence. |
| FirstOrDefaultAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken) |
Asynchronně vrátí první prvek sekvence, která splňuje zadanou podmínku, nebo výchozí hodnotu, pokud žádný takový prvek nenajde. |
| FirstOrDefaultAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vrátí první prvek sekvence nebo výchozí hodnotu, pokud sekvence neobsahuje žádné prvky. |
| ForEachAsync<T>(IQueryable<T>, Action<T>, CancellationToken) |
Asynchronně vytvoří výčet výsledků dotazu a provede zadanou akci u každého elementu. |
| IgnoreAutoIncludes<TEntity>(IQueryable<TEntity>) |
Určuje, že aktuální Entity Framework dotaz LINQ by neměl mít použité žádné navigace načtené na úrovni modelu (Eager). |
| IgnoreQueryFilters<TEntity>(IQueryable<TEntity>) |
Určuje, že aktuální Entity Framework dotaz LINQ by neměl mít použité žádné filtry dotazů na úrovni modelu. |
| Include<TEntity>(IQueryable<TEntity>, String) |
Určuje související entity, které se mají zahrnout do výsledků dotazu. Vlastnost navigace, která se má zahrnout, je určená od typu dotazované entity ( |
| Include<TEntity,TProperty>(IQueryable<TEntity>, Expression<Func<TEntity,TProperty>>) |
Určuje související entity, které se mají zahrnout do výsledků dotazu. Vlastnost navigace, která se má zahrnout, je určená od typu dotazované entity ( |
| LastAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken) |
Asynchronně vrátí poslední prvek sekvence, který splňuje zadanou podmínku. |
| LastAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vrátí poslední prvek sekvence. |
| LastOrDefaultAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken) |
Asynchronně vrátí poslední prvek sekvence, který splňuje zadanou podmínku, nebo výchozí hodnotu, pokud žádný takový prvek nenajde. |
| LastOrDefaultAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vrátí poslední prvek sekvence nebo výchozí hodnotu, pokud sekvence neobsahuje žádné prvky. |
| Load<TSource>(IQueryable<TSource>) |
Vytvoří výčet dotazu. Při použití Entity Framework způsobí to, že se výsledky dotazu načtou do přidruženého kontextu. Jedná se o ekvivalent volání ToList – a pak vyvolání seznamu (bez režie skutečného vytvoření seznamu). |
| LoadAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vyčísluje dotaz. Při použití Entity Framework způsobí to, že se výsledky dotazu načtou do přidruženého kontextu. Jedná se o ekvivalent volání ToList – a pak vyvolání seznamu (bez režie skutečného vytvoření seznamu). |
| LongCountAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken) |
Asynchronně vrátí hodnotu Int64 , která představuje počet prvků v sekvenci, která splní podmínku. |
| LongCountAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vrátí hodnotu Int64 , která představuje celkový počet prvků v sekvenci. |
| MaxAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vrací maximální hodnotu sekvence. |
| MaxAsync<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>, CancellationToken) |
Asynchronně vyvolá funkci projekce na každém elementu sekvence a vrátí maximální výslednou hodnotu. |
| MinAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vrátí minimální hodnotu sekvence. |
| MinAsync<TSource,TResult>(IQueryable<TSource>, Expression<Func<TSource,TResult>>, CancellationToken) |
Asynchronně vyvolá funkci projekce na každém elementu sekvence a vrátí minimální výslednou hodnotu. |
| SingleAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken) |
Asynchronně vrátí jediný prvek sekvence, který splňuje zadanou podmínku, a vyvolá výjimku, pokud existuje více než jeden takový prvek. |
| SingleAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vrátí jediný prvek sekvence a vyvolá výjimku, pokud v sekvenci není přesně jeden prvek. |
| SingleOrDefaultAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Boolean>>, CancellationToken) |
Asynchronně vrátí jediný prvek sekvence, který splňuje zadanou podmínku, nebo výchozí hodnotu, pokud žádný takový prvek neexistuje. Tato metoda vyvolá výjimku, pokud více než jeden prvek splňuje podmínky. |
| SingleOrDefaultAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vrátí jediný prvek sekvence nebo výchozí hodnotu, pokud je sekvence prázdná; Tato metoda vyvolá výjimku, pokud je v sekvenci více než jeden prvek. |
| SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Decimal>>, CancellationToken) |
Asynchronně vypočítá součet sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Double>>, CancellationToken) |
Asynchronně vypočítá součet sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int32>>, CancellationToken) |
Asynchronně vypočítá součet sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Int64>>, CancellationToken) |
Asynchronně vypočítá součet sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Decimal>>>, CancellationToken) |
Asynchronně vypočítá součet sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Double>>>, CancellationToken) |
Asynchronně vypočítá součet sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int32>>>, CancellationToken) |
Asynchronně vypočítá součet sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Int64>>>, CancellationToken) |
Asynchronně vypočítá součet sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Nullable<Single>>>, CancellationToken) |
Asynchronně vypočítá součet sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| SumAsync<TSource>(IQueryable<TSource>, Expression<Func<TSource,Single>>, CancellationToken) |
Asynchronně vypočítá součet sekvence hodnot, které jsou získány vyvoláním funkce projekce na každý prvek vstupní sekvence. |
| TagWith<T>(IQueryable<T>, String) |
Přidá značku do kolekce značek přidružených k dotazu EF LINQ. Značky jsou anotace dotazů, které mohou poskytnout kontextové informace o trasování v různých místech kanálu dotazu. |
| ToArrayAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vytvoří pole z objektu IQueryable<T> pomocí výčtu asynchronně. |
| ToDictionaryAsync<TSource,TKey>(IQueryable<TSource>, Func<TSource,TKey>, IEqualityComparer<TKey>, CancellationToken) |
Vytvoří Dictionary<TKey,TValue> z IQueryable<T> pomocí výčet asynchronně podle zadané funkce selektoru klíče a porovnávacího prvku. |
| ToDictionaryAsync<TSource,TKey>(IQueryable<TSource>, Func<TSource,TKey>, CancellationToken) |
Vytvoří Dictionary<TKey,TValue> z IQueryable<T> pomocí výčet asynchronně v závislosti na zadané funkci selektoru klíče. |
| ToDictionaryAsync<TSource,TKey,TElement>(IQueryable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, IEqualityComparer<TKey>, CancellationToken) |
Vytvoří Dictionary<TKey,TValue> z IQueryable<T> pomocí výčet asynchronně podle zadané funkce výběru klíče, porovnávacího prvku a funkce selektor elementu. |
| ToDictionaryAsync<TSource,TKey,TElement>(IQueryable<TSource>, Func<TSource,TKey>, Func<TSource,TElement>, CancellationToken) |
Vytvoří Dictionary<TKey,TValue> z IQueryable<T> pomocí výčet asynchronně v závislosti na zadaném selektoru klíče a funkci selektor elementu. |
| ToListAsync<TSource>(IQueryable<TSource>, CancellationToken) |
Asynchronně vytvoří List<T> z objektu IQueryable<T> výčet asynchronně. |
| GetInfrastructure<T>(IInfrastructure<T>) |
Získá hodnotu z vlastnosti, která je skrytá pomocí IInfrastructure<T> . Tuto metodu obvykle používají poskytovatelé databáze (a jiná rozšíření). Obecně se nepoužívá v kódu aplikace. IInfrastructure<T> slouží ke skrytí vlastností, které nejsou určeny pro použití v kódu aplikace, ale lze je použít v metodách rozšíření napsaných poskytovateli databáze atd. |
| CreateProxy<TEntity>(DbSet<TEntity>, Action<TEntity>, Object[]) |
Vytvoří instanci proxy serveru pro typ entity, pokud bylo povoleno vytváření proxy serveru. |
| CreateProxy<TEntity>(DbSet<TEntity>, Object[]) |
Vytvoří instanci proxy serveru pro typ entity, pokud bylo povoleno vytváření proxy serveru. |
| AsSingleQuery<TEntity>(IQueryable<TEntity>) |
Vrátí nový dotaz, který je nakonfigurován tak, aby načetl kolekce do výsledků dotazu v jednom databázovém dotazu. Toto chování obecně zaručuje konzistenci výsledků v rámci souběžných aktualizací (ale podrobnosti se mohou lišit v závislosti na používané úrovni izolace databáze a transakce). To ale může způsobit problémy s výkonem, když dotaz načte víc souvisejících kolekcí. Výchozím chováním při rozdělování dotazů na dotazy lze řídit UseQuerySplittingBehavior(QuerySplittingBehavior) . |
| AsSplitQuery<TEntity>(IQueryable<TEntity>) |
Vrátí nový dotaz, který je nakonfigurován tak, aby načetl kolekce do výsledků dotazu prostřednictvím samostatných databázových dotazů. Toto chování může významně zlepšit výkon, když dotaz načte více kolekcí. Ale vzhledem k tomu, že se používají samostatné dotazy, může to mít za následek nekonzistentní výsledky, pokud dojde k souběžným aktualizacím. Serializovatelné nebo snímkové transakce lze použít ke zmírnění těchto potíží a k dosažení konzistence s rozdělenými dotazy, ale které mohou přinést jiné náklady na výkon a rozdíl v chování. Výchozím chováním při rozdělování dotazů na dotazy lze řídit UseQuerySplittingBehavior(QuerySplittingBehavior) . |
| FromSql<TEntity>(IQueryable<TEntity>, RawSqlString, Object[]) |
Zastaralé.
Vytvoří dotaz LINQ založený na nezpracovaném dotazu SQL.
Pokud poskytovatel databáze podporuje sestavování na dodaných SQL, můžete vytvořit sestavování nezpracovaného dotazu SQL pomocí operátorů LINQ –
Stejně jako u jakéhokoli rozhraní API, které podporuje SQL, je důležité parametrizovat libovolný vstup uživatele, aby chránil proti útoku prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametru a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter –
Toto přetížení přijímá také instance DbParameter jako hodnoty parametrů. To umožňuje použít pojmenované parametry v řetězci dotazu SQL – |
| FromSql<TEntity>(IQueryable<TEntity>, FormattableString) |
Zastaralé.
Vytvoří dotaz LINQ na základě interpolované řetězcové reprezentace dotazu SQL.
Pokud poskytovatel databáze podporuje sestavování na dodaných SQL, můžete vytvořit sestavování nezpracovaného dotazu SQL pomocí operátorů LINQ –
Stejně jako u jakéhokoli rozhraní API, které podporuje SQL, je důležité parametrizovat libovolný vstup uživatele, aby chránil proti útoku prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout interpolované parametry umístění. Všechny Interpolované hodnoty parametrů se automaticky převedou na DbParameter – |
| FromSql<TEntity>(IQueryable<TEntity>, String, Object[]) |
Vytvoří dotaz LINQ založený na nezpracovaném dotazu SQL.
Pokud poskytovatel databáze podporuje sestavování na dodaných SQL, můžete vytvořit sestavování nezpracovaného dotazu SQL pomocí operátorů LINQ –
Stejně jako u jakéhokoli rozhraní API, které podporuje SQL, je důležité parametrizovat libovolný vstup uživatele, aby chránil proti útoku prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametru a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter –
Můžete také vytvořit DbParameter a dodat ji jako hodnotu parametru. To umožňuje použít pojmenované parametry v řetězci dotazu SQL – |
| FromSqlInterpolated<TEntity>(DbSet<TEntity>, FormattableString) |
Vytvoří dotaz LINQ na základě interpolované řetězcové reprezentace dotazu SQL. Pokud poskytovatel databáze podporuje sestavování na dodaných SQL, můžete vytvořit sestavovat nezpracovaný dotaz SQL pomocí operátorů LINQ: context.Blogs.FromSqlInterpolated($"SELECT * FROM dbo.Blogs").OrderBy(b => b.Name)
Stejně jako u jakéhokoli rozhraní API, které podporuje SQL, je důležité parametrizovat libovolný vstup uživatele, aby chránil proti útoku prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout interpolované parametry umístění. Všechny Interpolované hodnoty parametrů se automaticky převedou na DbParameter: context.Blogs.FromSqlInterpolated($"SELECT * FROM [dbo].[SearchBlogs]({userSuppliedSearchTerm})")
|
| FromSqlRaw<TEntity>(DbSet<TEntity>, String, Object[]) |
Vytvoří dotaz LINQ založený na nezpracovaném dotazu SQL.
Pokud poskytovatel databáze podporuje sestavování na dodaných SQL, můžete vytvořit sestavování nezpracovaného dotazu SQL pomocí operátorů LINQ: Stejně jako u jakéhokoli rozhraní API, které podporuje SQL, je důležité parametrizovat libovolný vstup uživatele, aby chránil proti útoku prostřednictvím injektáže SQL. Do řetězce dotazu SQL můžete zahrnout držitele umístění parametru a pak zadat hodnoty parametrů jako další argumenty. Všechny hodnoty parametrů, které zadáte, se automaticky převedou na DbParameter: context.Blogs.FromSqlRaw("SELECT * FROM [dbo].[SearchBlogs]({0})", userSuppliedSearchTerm)
Nikdy ale nepředá zřetězený nebo interpolující řetězec ( Toto přetížení přijímá také instance DbParameter jako hodnoty parametrů. To umožňuje použít pojmenované parametry v řetězci dotazu SQL: context.Blogs.FromSqlRaw("SELECT * FROM [dbo].[SearchBlogs]({@searchTerm})", new SqlParameter("@searchTerm", userSuppliedSearchTerm))
|