RelationalDatabaseCreator 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
데이터베이스/스키마 만들기 및 기타 관련 작업을 수행합니다.
이 형식은 일반적으로 데이터베이스 공급자(및 기타 확장)에서 사용됩니다. 일반적으로 애플리케이션 코드에는 사용되지 않습니다.
public abstract class RelationalDatabaseCreator : Microsoft.EntityFrameworkCore.Storage.IDatabaseCreator, Microsoft.EntityFrameworkCore.Storage.IRelationalDatabaseCreator
public abstract class RelationalDatabaseCreator : Microsoft.EntityFrameworkCore.Internal.IServiceInjectionSite, Microsoft.EntityFrameworkCore.Storage.IDatabaseCreator, Microsoft.EntityFrameworkCore.Storage.IRelationalDatabaseCreator
public abstract class RelationalDatabaseCreator : Microsoft.EntityFrameworkCore.Storage.IDatabaseCreatorWithCanConnect, Microsoft.EntityFrameworkCore.Storage.IRelationalDatabaseCreator
type RelationalDatabaseCreator = class
interface IRelationalDatabaseCreator
interface IDatabaseCreator
type RelationalDatabaseCreator = class
interface IRelationalDatabaseCreator
interface IDatabaseCreator
interface IServiceInjectionSite
type RelationalDatabaseCreator = class
interface IRelationalDatabaseCreator
interface IDatabaseCreator
interface IDatabaseCreatorWithCanConnect
Public MustInherit Class RelationalDatabaseCreator
Implements IDatabaseCreator, IRelationalDatabaseCreator
Public MustInherit Class RelationalDatabaseCreator
Implements IDatabaseCreator, IRelationalDatabaseCreator, IServiceInjectionSite
Public MustInherit Class RelationalDatabaseCreator
Implements IDatabaseCreatorWithCanConnect, IRelationalDatabaseCreator
- 상속
-
RelationalDatabaseCreator
- 구현
-
IDatabaseCreator IRelationalDatabaseCreator Microsoft.EntityFrameworkCore.Internal.IServiceInjectionSite IDatabaseCreatorWithCanConnect
설명
서비스 수명은 입니다 Scoped. 즉, 각 DbContext instance 이 서비스의 자체 instance 사용합니다. 구현은 모든 수명에 등록된 다른 서비스에 따라 달라질 수 있습니다. 구현은 스레드로부터 안전할 필요가 없습니다.
자세한 내용 과 예제는 데이터베이스 공급자 및 확장 구현 을 참조하세요.
생성자
속성
Connection |
데이터베이스에 대한 연결을 가져옵니다. |
Dependencies |
이 서비스에 대한 관계형 공급자별 종속성입니다. |
ExecutionStrategyFactory |
사용할 을 IExecutionStrategyFactory 가져옵니다. |
MigrationCommandExecutor |
사용할 을 IMigrationCommandExecutor 가져옵니다. |
Model |
이 작성자가 사용 중인 컨텍스트에 대한 모델을 가져옵니다. |
메서드
CanConnect() |
데이터베이스를 사용할 수 있고 연결할 수 있는지 여부를 결정합니다. |
CanConnectAsync(CancellationToken) |
데이터베이스를 사용할 수 있고 연결할 수 있는지 여부를 결정합니다. |
Create() |
물리적 데이터베이스를 만듭니다. 스키마로 채우기를 시도하지 않습니다. |
CreateAsync(CancellationToken) |
물리적 데이터베이스를 비동기적으로 만듭니다. 스키마로 채우기를 시도하지 않습니다. |
CreateTables() |
데이터베이스의 현재 모델에 대한 모든 테이블을 만듭니다. 스키마를 증분 방식으로 업데이트하려고 시도하지 않습니다. 데이터베이스에 테이블이 없는 것으로 가정합니다. |
CreateTablesAsync(CancellationToken) |
데이터베이스의 현재 모델에 대한 모든 테이블을 비동기적으로 만듭니다. 스키마를 증분 방식으로 업데이트하려고 시도하지 않습니다. 데이터베이스에 테이블이 없는 것으로 가정합니다. |
Delete() |
실제 데이터베이스를 삭제합니다. |
DeleteAsync(CancellationToken) |
물리적 데이터베이스를 비동기적으로 삭제합니다. |
EnsureCreated() |
컨텍스트에 대한 데이터베이스가 있는지 확인합니다. 존재하는 경우 아무런 동작이 발생하지 않습니다. 데이터베이스가 없으면 데이터베이스와 모든 스키마가 만들어집니다. 데이터베이스가 있는 경우 이 컨텍스트에 대한 모델과 호환되도록 하기 위해 아무 작업도 수행되지 않습니다. |
EnsureCreatedAsync(CancellationToken) |
컨텍스트에 대한 데이터베이스가 있는지 비동기적으로 확인합니다. 존재하는 경우 아무런 동작이 발생하지 않습니다. 데이터베이스가 없으면 데이터베이스와 모든 스키마가 만들어집니다. 데이터베이스가 있는 경우 이 컨텍스트에 대한 모델과 호환되도록 하기 위해 아무 작업도 수행되지 않습니다. |
EnsureDeleted() |
컨텍스트에 대한 데이터베이스가 없는지 확인합니다. 존재하지 않으면 아무 작업도 수행되지 않습니다. 있는 경우 데이터베이스가 삭제됩니다. 경고: 전체 데이터베이스가 삭제되고 이 컨텍스트에 대해 모델에서 사용하는 데이터베이스 개체만 제거하려고 하지 않습니다. |
EnsureDeletedAsync(CancellationToken) |
컨텍스트에 대한 데이터베이스가 없는지 비동기적으로 확인합니다. 존재하지 않으면 아무 작업도 수행되지 않습니다. 있는 경우 데이터베이스가 삭제됩니다. 경고: 전체 데이터베이스가 삭제되고 이 컨텍스트에 대해 모델에서 사용하는 데이터베이스 개체만 제거하려고 하지 않습니다. |
Exists() |
실제 데이터베이스가 있는지 여부를 확인합니다. 데이터베이스에 현재 모델에 대한 스키마가 포함되어 있는지 확인하려고 시도하지 않습니다. |
ExistsAsync(CancellationToken) |
물리적 데이터베이스가 있는지 여부를 비동기적으로 결정합니다. 데이터베이스에 현재 모델에 대한 스키마가 포함되어 있는지 확인하려고 시도하지 않습니다. |
GenerateCreateScript() |
현재 모델에 대한 모든 테이블을 만드는 스크립트를 생성합니다. |
GetCreateTablesCommands() |
모델에서 모든 테이블을 만들 명령을 가져옵니다. |
GetCreateTablesCommands(MigrationsSqlGenerationOptions) |
모델에서 모든 테이블을 만들 명령을 가져옵니다. |
HasTables() |
데이터베이스에 테이블이 포함되어 있는지 여부를 확인합니다. 테이블이 현재 모델에 속하는지 여부를 확인하려고 시도하지 않습니다. |
HasTablesAsync(CancellationToken) |
데이터베이스에 테이블이 포함되어 있는지 여부를 비동기적으로 결정합니다. 테이블이 현재 모델에 속하는지 여부를 확인하려고 시도하지 않습니다. |
명시적 인터페이스 구현
IServiceInjectionSite.InjectServices(IServiceProvider) |
이 API는 Entity Framework Core 인프라를 지원하며 코드에서 직접 사용할 수 없습니다. 이 API는 이후 릴리스에서 변경되거나 제거될 수 있습니다. |
적용 대상
Entity Framework