다음을 통해 공유


DbMigrationsConfiguration<TContext>.Seed(TContext) 메서드

정의

시드 데이터를 업데이트할 수 있도록 최신 마이그레이션으로 업그레이드한 후 실행됩니다.

protected virtual void Seed (TContext context);
abstract member Seed : 'Context -> unit
override this.Seed : 'Context -> unit
Protected Overridable Sub Seed (context As TContext)

매개 변수

context
TContext

시드 데이터를 업데이트하는 데 사용할 컨텍스트입니다.

설명

이 메서드를 실행할 때 데이터베이스에 시드 데이터가 이미 포함되어 있을 수 있습니다. 즉, 이 메서드의 구현은 시드 데이터가 있는지 여부 및/또는 최신 데이터를 검사 다음 필요한 경우에만 비파괴적인 방식으로 변경해야 합니다. 를 AddOrUpdate<TEntity>(IDbSet<TEntity>, TEntity[]) 사용하여 이 문제를 해결할 수 있지만 많은 양의 데이터를 시드하는 경우 성능이 문제인 경우 보다 세분화된 검사를 수행해야 할 수 있습니다. 데이터베이스 이니셜라이저를 MigrateDatabaseToLatestVersion<TContext,TMigrationsConfiguration> 사용하는 경우 이 메서드는 이니셜라이저가 실행될 때마다 호출됩니다. , DropCreateDatabaseIfModelChanges<TContext>또는 CreateDatabaseIfNotExists<TContext> 이니셜라이저 중 DropCreateDatabaseAlways<TContext>하나를 사용하는 경우 이 메서드가 호출되지 않으며 이니셜라이저에 정의된 Seed 메서드를 대신 사용해야 합니다.

적용 대상