Udostępnij za pośrednictwem


DbContext.AddAsync Metoda

Definicja

Przeciążenia

AddAsync(Object, CancellationToken)

Rozpoczyna śledzenie danej jednostki, a wszystkie inne dostępne jednostki, które nie są jeszcze śledzone, w Added stanie tak, że zostaną one wstawione do bazy danych po SaveChanges() wywołaniu.

AddAsync<TEntity>(TEntity, CancellationToken)

Rozpoczyna śledzenie danej jednostki, a wszystkie inne dostępne jednostki, które nie są jeszcze śledzone, w Added stanie tak, że zostaną one wstawione do bazy danych po SaveChanges() wywołaniu.

AddAsync(Object, CancellationToken)

Rozpoczyna śledzenie danej jednostki, a wszystkie inne dostępne jednostki, które nie są jeszcze śledzone, w Added stanie tak, że zostaną one wstawione do bazy danych po SaveChanges() wywołaniu.

public virtual System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry> AddAsync (object entity, System.Threading.CancellationToken cancellationToken = default);
public virtual System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry> AddAsync (object entity, System.Threading.CancellationToken cancellationToken = default);
abstract member AddAsync : obj * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry>
override this.AddAsync : obj * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry>
abstract member AddAsync : obj * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry>
override this.AddAsync : obj * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry>
Public Overridable Function AddAsync (entity As Object, Optional cancellationToken As CancellationToken = Nothing) As Task(Of EntityEntry)
Public Overridable Function AddAsync (entity As Object, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of EntityEntry)

Parametry

entity
Object

Jednostka do dodania.

cancellationToken
CancellationToken

Element CancellationToken do obserwowania podczas oczekiwania na ukończenie zadania.

Zwraca

Zadanie reprezentujące operację asynchronicznego dodawania. Wynik zadania zawiera wartość EntityEntry dla jednostki. Wpis zapewnia dostęp do informacji i operacji śledzenia zmian dla jednostki.

Wyjątki

Jeśli element CancellationToken zostanie anulowany.

Uwagi

Służy State do ustawiania stanu tylko jednej jednostki.

Ta metoda jest asynchroniczna tylko w celu umożliwienia generatorom wartości specjalnych, takich jak ta używana przez metodę "Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo", aby uzyskać dostęp do bazy danych asynchronicznie. W przypadku wszystkich innych przypadków należy użyć metody innej niż asynchronicznej.

Program Entity Framework Core nie obsługuje wielu równoległych operacji uruchamianych w tym samym wystąpieniu dbContext. Obejmuje to zarówno równoległe wykonywanie zapytań asynchronicznych, jak i wszelkie jawne współbieżne użycie z wielu wątków. W związku z tym zawsze czekaj na wywołania asynchroniczne natychmiast lub używaj oddzielnych wystąpień dbContext dla operacji wykonywanych równolegle. Aby uzyskać więcej informacji i przykładów, zobacz Unikanie problemów z wątkami dbContext .

Aby uzyskać więcej informacji i przykładów, zobacz Śledzenie zmian platformy EF Core .

Dotyczy

AddAsync<TEntity>(TEntity, CancellationToken)

Rozpoczyna śledzenie danej jednostki, a wszystkie inne dostępne jednostki, które nie są jeszcze śledzone, w Added stanie tak, że zostaną one wstawione do bazy danych po SaveChanges() wywołaniu.

public virtual System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry<TEntity>> AddAsync<TEntity> (TEntity entity, System.Threading.CancellationToken cancellationToken = default) where TEntity : class;
public virtual System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry<TEntity>> AddAsync<TEntity> (TEntity entity, System.Threading.CancellationToken cancellationToken = default) where TEntity : class;
abstract member AddAsync : 'Entity * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry<'Entity>> (requires 'Entity : null)
override this.AddAsync : 'Entity * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry<'Entity>> (requires 'Entity : null)
abstract member AddAsync : 'Entity * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry<'Entity>> (requires 'Entity : null)
override this.AddAsync : 'Entity * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<Microsoft.EntityFrameworkCore.ChangeTracking.EntityEntry<'Entity>> (requires 'Entity : null)
Public Overridable Function AddAsync(Of TEntity As Class) (entity As TEntity, Optional cancellationToken As CancellationToken = Nothing) As Task(Of EntityEntry(Of TEntity))
Public Overridable Function AddAsync(Of TEntity As Class) (entity As TEntity, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of EntityEntry(Of TEntity))

Parametry typu

TEntity

Typ jednostki.

Parametry

entity
TEntity

Jednostka do dodania.

cancellationToken
CancellationToken

Element CancellationToken do obserwowania podczas oczekiwania na ukończenie zadania.

Zwraca

Task<EntityEntry<TEntity>>

Zadanie reprezentujące operację asynchronicznego dodawania. Wynik zadania zawiera wartość EntityEntry<TEntity> dla jednostki. Wpis zapewnia dostęp do informacji i operacji śledzenia zmian dla jednostki.

Wyjątki

Jeśli element CancellationToken zostanie anulowany.

Uwagi

Ta metoda jest asynchroniczna tylko w celu umożliwienia generatorom wartości specjalnych, takich jak ta używana przez metodę "Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo", aby uzyskać dostęp do bazy danych asynchronicznie. W przypadku wszystkich innych przypadków należy użyć metody innej niż asynchronicznej.

Program Entity Framework Core nie obsługuje wielu równoległych operacji uruchamianych w tym samym wystąpieniu dbContext. Obejmuje to zarówno równoległe wykonywanie zapytań asynchronicznych, jak i wszelkie jawne współbieżne użycie z wielu wątków. W związku z tym zawsze czekaj na wywołania asynchroniczne natychmiast lub używaj oddzielnych wystąpień dbContext dla operacji wykonywanych równolegle. Aby uzyskać więcej informacji i przykładów, zobacz Unikanie problemów z wątkami dbContext .

Aby uzyskać więcej informacji i przykładów, zobacz Śledzenie zmian platformy EF Core .

Dotyczy