Jazyk

DbContext.SaveChangesAsync Metoda

Definice

Přetížení

Název Description
SaveChangesAsync(Boolean, CancellationToken)

Uloží všechny změny provedené v tomto kontextu do databáze.

SaveChangesAsync(CancellationToken)

Uloží všechny změny provedené v tomto kontextu do databáze.

SaveChangesAsync(Boolean, CancellationToken)

Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs

Uloží všechny změny provedené v tomto kontextu do databáze.

public virtual System.Threading.Tasks.Task<int> SaveChangesAsync(bool acceptAllChangesOnSuccess, System.Threading.CancellationToken cancellationToken = default);
abstract member SaveChangesAsync : bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
override this.SaveChangesAsync : bool * System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overridable Function SaveChangesAsync (acceptAllChangesOnSuccess As Boolean, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Integer)

Parametry

acceptAllChangesOnSuccess
Boolean

Označuje, zda AcceptAllChanges() je volána po úspěšném odeslání změn do databáze.

cancellationToken
CancellationToken

A CancellationToken , která se má sledovat při čekání na dokončení úkolu.

Návraty

Úloha, která představuje asynchronní operaci uložení. Výsledek úkolu obsahuje počet položek stavu zapsaných do databáze.

Výjimky

Při ukládání do databáze došlo k chybě.

Při ukládání do databáze dojde k porušení souběžnosti. Porušení souběžnosti nastane, když během ukládání dojde k neočekávanému počtu řádků. Důvodem je obvykle to, že data v databázi byla od načtení do paměti změněna.

Poznámky

Tato metoda automaticky zavolá DetectChanges() všechny změny instancí entit před uložením do podkladové databáze. To lze zakázat prostřednictvím AutoDetectChangesEnabled.

Entity Framework Core nepodporuje spouštění více paralelních operací ve stejné instanci DbContext. To zahrnuje paralelní spouštění asynchronních dotazů i jakékoli explicitní souběžné používání z více vláken. Proto vždy čekejte asynchronní volání okamžitě nebo použijte samostatné instance DbContext pro operace, které se spouští paralelně. Další informace a příklady najdete v tématu Zabránění problémům s vlákny DbContext .

Další informace a příklady najdete v tématu Ukládání dat v EF Core .

Platí pro

SaveChangesAsync(CancellationToken)

Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs
Zdroj:
DbContext.cs

Uloží všechny změny provedené v tomto kontextu do databáze.

public virtual System.Threading.Tasks.Task<int> SaveChangesAsync(System.Threading.CancellationToken cancellationToken = default);
abstract member SaveChangesAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
override this.SaveChangesAsync : System.Threading.CancellationToken -> System.Threading.Tasks.Task<int>
Public Overridable Function SaveChangesAsync (Optional cancellationToken As CancellationToken = Nothing) As Task(Of Integer)

Parametry

cancellationToken
CancellationToken

A CancellationToken , která se má sledovat při čekání na dokončení úkolu.

Návraty

Úloha, která představuje asynchronní operaci uložení. Výsledek úkolu obsahuje počet položek stavu zapsaných do databáze.

Výjimky

Při ukládání do databáze došlo k chybě.

Při ukládání do databáze dojde k porušení souběžnosti. Porušení souběžnosti nastane, když během ukládání dojde k neočekávanému počtu řádků. Důvodem je obvykle to, že data v databázi byla od načtení do paměti změněna.

Poznámky

Tato metoda automaticky zavolá DetectChanges() všechny změny instancí entit před uložením do podkladové databáze. To lze zakázat prostřednictvím AutoDetectChangesEnabled.

Entity Framework Core nepodporuje spouštění více paralelních operací ve stejné instanci DbContext. To zahrnuje paralelní spouštění asynchronních dotazů i jakékoli explicitní souběžné používání z více vláken. Proto vždy čekejte asynchronní volání okamžitě nebo použijte samostatné instance DbContext pro operace, které se spouští paralelně. Další informace a příklady najdete v tématu Zabránění problémům s vlákny DbContext .

Další informace a příklady najdete v tématu Ukládání dat v EF Core .

Platí pro