次の方法で共有


RelationalDatabaseCreator クラス

定義

データベース/スキーマの作成、およびその他の関連する操作を実行します。

この型は、通常、データベース プロバイダー (およびその他の拡張機能) によって使用されます。 通常、アプリケーション コードでは使用されません。

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 インスタンスがこのサービスの独自のインスタンスを使用することを意味します。 この実装は、任意の有効期間で登録されている他のサービスに依存する場合があります。 実装はスレッド セーフである必要はありません。

詳細と例については、「 データベース プロバイダーと拡張機能の実装 」を参照してください。

コンストラクター

RelationalDatabaseCreator(IModel, IRelationalConnection, IMigrationsModelDiffer, IMigrationsSqlGenerator, IMigrationCommandExecutor, IExecutionStrategyFactory)

RelationalDatabaseCreator クラスの新しいインスタンスを初期化します。

RelationalDatabaseCreator(IModel, IRelationalConnection, IMigrationsModelDiffer, IMigrationsSqlGenerator, IMigrationCommandExecutor)
古い.

RelationalDatabaseCreator クラスの新しいインスタンスを初期化します。

RelationalDatabaseCreator(RelationalDatabaseCreatorDependencies)

RelationalDatabaseCreator クラスの新しいインスタンスを初期化します。

プロパティ

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 は、今後のリリースで変更または削除される可能性があります。

適用対象