DbContext.AddRangeAsync Method

Definition

Overloads

AddRangeAsync(Object[])

Begins tracking the given entity, and any other reachable entities that are not already being tracked, in the Added state such that they will be inserted into the database when SaveChanges() is called.

AddRangeAsync(IEnumerable<Object>, CancellationToken)

Begins tracking the given entity, and any other reachable entities that are not already being tracked, in the Added state such that they will be inserted into the database when SaveChanges() is called.

AddRangeAsync(Object[])

Begins tracking the given entity, and any other reachable entities that are not already being tracked, in the Added state such that they will be inserted into the database when SaveChanges() is called.

public virtual System.Threading.Tasks.Task AddRangeAsync (params object[] entities);
abstract member AddRangeAsync : obj[] -> System.Threading.Tasks.Task
override this.AddRangeAsync : obj[] -> System.Threading.Tasks.Task
Public Overridable Function AddRangeAsync (ParamArray entities As Object()) As Task

Parameters

entities
Object[]

The entities to add.

Returns

A task that represents the asynchronous operation.

Remarks

This method is async only to allow special value generators, such as the one used by 'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo', to access the database asynchronously. For all other cases the non async method should be used.

Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute in parallel. See Avoiding DbContext threading issues for more information and examples.

See EF Core change tracking and Using AddRange, UpdateRange, AttachRange, and RemoveRange for more information and examples.

Applies to

AddRangeAsync(IEnumerable<Object>, CancellationToken)

Begins tracking the given entity, and any other reachable entities that are not already being tracked, in the Added state such that they will be inserted into the database when SaveChanges() is called.

public virtual System.Threading.Tasks.Task AddRangeAsync (System.Collections.Generic.IEnumerable<object> entities, System.Threading.CancellationToken cancellationToken = default);
abstract member AddRangeAsync : seq<obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
override this.AddRangeAsync : seq<obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Overridable Function AddRangeAsync (entities As IEnumerable(Of Object), Optional cancellationToken As CancellationToken = Nothing) As Task

Parameters

entities
IEnumerable<Object>

The entities to add.

cancellationToken
CancellationToken

A CancellationToken to observe while waiting for the task to complete.

Returns

A task that represents the asynchronous operation.

Exceptions

Remarks

This method is async only to allow special value generators, such as the one used by 'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo', to access the database asynchronously. For all other cases the non async method should be used.

Entity Framework Core does not support multiple parallel operations being run on the same DbContext instance. This includes both parallel execution of async queries and any explicit concurrent use from multiple threads. Therefore, always await async calls immediately, or use separate DbContext instances for operations that execute in parallel. See Avoiding DbContext threading issues for more information and examples.

See EF Core change tracking and Using AddRange, UpdateRange, AttachRange, and RemoveRange for more information and examples.

Applies to