다음을 통해 공유


DbContext.AddAsync 메서드

정의

오버로드

AddAsync(Object, CancellationToken)

가 호출될 때 SaveChanges() 데이터베이스에 삽입되도록 지정된 엔터티 및 아직 추적 Added 되지 않은 다른 연결 가능한 엔터티 추적을 시작합니다.

AddAsync<TEntity>(TEntity, CancellationToken)

가 호출될 때 SaveChanges() 데이터베이스에 삽입되도록 지정된 엔터티 및 아직 추적 Added 되지 않은 다른 연결 가능한 엔터티 추적을 시작합니다.

AddAsync(Object, CancellationToken)

Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs

가 호출될 때 SaveChanges() 데이터베이스에 삽입되도록 지정된 엔터티 및 아직 추적 Added 되지 않은 다른 연결 가능한 엔터티 추적을 시작합니다.

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)

매개 변수

entity
Object

추가할 엔터티입니다.

cancellationToken
CancellationToken

CancellationToken 작업이 완료 될 때까지 기다리는 동안 관찰할 입니다.

반환

비동기 추가 작업을 나타내는 작업입니다. 작업 결과에는 EntityEntry 엔터티에 대한 가 포함됩니다. 항목은 엔터티에 대한 변경 내용 추적 정보 및 작업에 대한 액세스를 제공합니다.

예외

설명

를 사용하여 State 단일 엔터티의 상태만 설정합니다.

이 메서드는 'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo'에서 사용하는 것과 같은 특수 값 생성기가 데이터베이스에 비동기적으로 액세스할 수 있도록 비동기식으로만 허용합니다. 다른 모든 경우에는 비동기 메서드를 사용해야 합니다.

Entity Framework Core는 동일한 DbContext instance 실행되는 여러 병렬 작업을 지원하지 않습니다. 여기에는 비동기 쿼리의 병렬 실행과 여러 스레드에서의 명시적 동시 사용이 모두 포함됩니다. 따라서 항상 즉시 비동기 호출을 기다리거나 병렬로 실행되는 작업에 별도의 DbContext 인스턴스를 사용합니다. 자세한 내용 및 예제 는 DbContext 스레딩 문제 방지 를 참조하세요.

자세한 내용 및 예제 는 EF Core 변경 내용 추적 을 참조하세요.

적용 대상

AddAsync<TEntity>(TEntity, CancellationToken)

Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs
Source:
DbContext.cs

가 호출될 때 SaveChanges() 데이터베이스에 삽입되도록 지정된 엔터티 및 아직 추적 Added 되지 않은 다른 연결 가능한 엔터티 추적을 시작합니다.

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))

형식 매개 변수

TEntity

엔터티의 형식입니다.

매개 변수

entity
TEntity

추가할 엔터티입니다.

cancellationToken
CancellationToken

CancellationToken 작업이 완료 될 때까지 기다리는 동안 관찰할 입니다.

반환

Task<EntityEntry<TEntity>>

비동기 추가 작업을 나타내는 작업입니다. 작업 결과에는 EntityEntry<TEntity> 엔터티에 대한 가 포함됩니다. 항목은 엔터티에 대한 변경 내용 추적 정보 및 작업에 대한 액세스를 제공합니다.

예외

설명

이 메서드는 'Microsoft.EntityFrameworkCore.Metadata.SqlServerValueGenerationStrategy.SequenceHiLo'에서 사용하는 것과 같은 특수 값 생성기가 데이터베이스에 비동기적으로 액세스할 수 있도록 비동기식으로만 허용합니다. 다른 모든 경우에는 비동기 메서드를 사용해야 합니다.

Entity Framework Core는 동일한 DbContext instance 실행되는 여러 병렬 작업을 지원하지 않습니다. 여기에는 비동기 쿼리의 병렬 실행과 여러 스레드에서의 명시적 동시 사용이 모두 포함됩니다. 따라서 항상 즉시 비동기 호출을 기다리거나 병렬로 실행되는 작업에 별도의 DbContext 인스턴스를 사용합니다. 자세한 내용 및 예제 는 DbContext 스레딩 문제 방지 를 참조하세요.

자세한 내용 및 예제 는 EF Core 변경 내용 추적 을 참조하세요.

적용 대상