EntityFrameworkServicesBuilder クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
サービスの登録時にデータベース プロバイダーが使用できるように設計されたビルダー API。
public class EntityFrameworkServicesBuilder : Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<Microsoft.Extensions.DependencyInjection.IServiceCollection>
public class EntityFrameworkServicesBuilder
type EntityFrameworkServicesBuilder = class
interface IInfrastructure<IServiceCollection>
type EntityFrameworkServicesBuilder = class
Public Class EntityFrameworkServicesBuilder
Implements IInfrastructure(Of IServiceCollection)
Public Class EntityFrameworkServicesBuilder
- 継承
-
EntityFrameworkServicesBuilder
- 派生
- 実装
注釈
プロバイダーは、このクラスのインスタンスを作成し、そのメソッドを使用してサービスを登録し、 を呼び出 TryAddCoreServices() して残りの Entity Framework サービスに入力する必要があります。
リレーショナル プロバイダーでは、代わりに 'EntityFrameworkRelationalServicesBuilder を使用する必要があります。
Entity Framework を使用すると、サービスが適切なスコープに登録されます。 場合によっては、プロバイダーが別のスコープでサービスを登録する場合がありますが、すべての依存関係が新しいスコープを処理できることと、それに依存するサービスに問題が発生しないように細心の注意を払う必要があります。
詳細と例については、「 データベース プロバイダーと拡張機能の実装 」を参照してください。
コンストラクター
EntityFrameworkServicesBuilder(IServiceCollection) |
プロバイダー サービスの登録用に新しい EntityFrameworkServicesBuilder を作成するためにデータベース プロバイダーによって使用されます。 リレーショナル プロバイダーでは、"EntityFrameworkRelationalServicesBuilder" を使用する必要があります。 |
フィールド
CoreServices |
これは Entity Framework Core インフラストラクチャをサポートする内部 API であり、パブリック API と同じ互換性標準の対象ではありません。 これは、いかなるリリースでも予告なしに変更または削除される可能性があります。 コード内でのみ直接使用する必要があります。これを行うと、新しい Entity Framework Core リリースに更新するときにアプリケーションエラーが発生する可能性があることを認識してください。 |
プロパティ
ServiceCollectionMap |
基になる ServiceCollectionMapへのアクセス。 |
メソッド
GetServiceCharacteristics(Type) |
指定されたサービスの ServiceCharacteristics 種類の を取得します。 |
TryAdd(Type, Object) |
Entity Framework サービスの実装を追加するのは、まだ登録されていない場合のみです。 このメソッドは、シングルトン サービスでのみ使用できます。 |
TryAdd(Type, Type) |
Entity Framework サービスの実装を追加するのは、まだ登録されていない場合のみです。 サービスのスコープは、Entity Framework によって自動的に定義されます。 |
TryAdd(Type, Type, Func<IServiceProvider,Object>) |
Entity Framework サービスのファクトリを追加するのは、まだ登録されていない場合のみです。 サービスのスコープは、Entity Framework によって自動的に定義されます。 |
TryAdd<TService,TImplementation>() |
Entity Framework サービスの実装を追加するのは、まだ登録されていない場合のみです。 サービスのスコープは、Entity Framework によって自動的に定義されます。 |
TryAdd<TService,TImplementation>(Func<IServiceProvider,TImplementation>) |
Entity Framework サービスのファクトリを追加するのは、まだ登録されていない場合のみです。 サービスのスコープは、Entity Framework によって自動的に定義されます。 |
TryAdd<TService>(Func<IServiceProvider,TService>) |
Entity Framework サービスのファクトリを追加するのは、まだ登録されていない場合のみです。 サービスのスコープは、Entity Framework によって自動的に定義されます。 |
TryAdd<TService>(TService) |
Entity Framework サービスの実装を追加するのは、まだ登録されていない場合のみです。 このメソッドは、シングルトン サービスでのみ使用できます。 |
TryAddCoreServices() |
プロバイダーによってまだ登録されていないすべてのサービスの既定の実装を登録します。 データベース プロバイダーは、このメソッドをサービス登録の最後の手順 (つまり、すべてのプロバイダー サービスが登録された後) として呼び出す必要があります。 |
TryAddProviderSpecificServices(Action<ServiceCollectionMap>) |
データベース プロバイダーは、プロバイダー固有のサービスを登録できるように、基になる ServiceCollectionMap サービスにアクセスするためにこのメソッドを呼び出す必要があります。 Entity Framework サービスの実装は、このメソッドではなく に EntityFrameworkServicesBuilder 直接登録する必要があることに注意してください。 |
TryGetServiceCharacteristics(Type) |
指定されたサービスの ServiceCharacteristics 種類の を取得します。 |
明示的なインターフェイスの実装
IInfrastructure<IServiceCollection>.Instance |
構成されている を取得します IServiceCollection 。 このプロパティは、パブリック API サーフェイスで直接公開されていないサービスを使用する必要がある拡張メソッドで使用することを目的としています。 |
拡張メソッド
GetInfrastructure<T>(IInfrastructure<T>) |
を使用して非表示になっているプロパティから値を IInfrastructure<T>取得します。 このメソッドは、通常、データベース プロバイダー (およびその他の拡張機能) によって使用されます。 通常、アプリケーション コードでは使用されません。 |
適用対象
Entity Framework