EntityFrameworkServiceCollectionExtensions.AddDbContext メソッド

定義

オーバーロード

AddDbContext<TContext>(IServiceCollection, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。 このメソッドは、ASP.NET などを使用して、アプリケーションで依存関係の挿入を使用する場合に使用します。 依存関係の挿入の設定の詳細については、「」を参照してください http://go.microsoft.com/fwlink/?LinkId=526890

AddDbContext<TContext>(IServiceCollection, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。 このメソッドは、ASP.NET などを使用して、アプリケーションで依存関係の挿入を使用する場合に使用します。 依存関係の挿入の設定の詳細については、「」を参照してください http://go.microsoft.com/fwlink/?LinkId=526890

AddDbContext<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。 このメソッドは、ASP.NET などを使用して、アプリケーションで依存関係の挿入を使用する場合に使用します。 依存関係の挿入の設定の詳細については、「」を参照してください http://go.microsoft.com/fwlink/?LinkId=526890 。

このオーバーロードには、 optionsAction アプリケーションを提供するがあり IServiceProvider ます。 これは、プライマリアプリケーションサービスプロバイダーからの内部サービスを解決するために Entity Framework を設定する場合に便利です。 既定では、他のオーバーロードを使用することをお勧めします。これにより、Entity Framework で独自のオーバーロードを作成して維持することができます。 IServiceProvider 内部 Entity Framework サービスの場合。

AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

AddDbContext<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

このオーバーロードには、 optionsAction アプリケーションのを提供するがあり IServiceProvider ます。 これは、プライマリアプリケーションサービスプロバイダーからの内部サービスを解決するために Entity Framework Core を設定する場合に便利です。 既定では、を使用することをお勧めします。 AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime) これにより、Entity Framework が内部 Entity Framework サービス用に独自のを作成して保守できるように IServiceProvider なります。

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

このオーバーロードには、 optionsAction アプリケーションのを提供するがあり IServiceProvider ます。 これは、プライマリアプリケーションサービスプロバイダーからの内部サービスを解決するために Entity Framework Core を設定する場合に便利です。 既定では、を使用することをお勧めします。 AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime) これにより、Entity Framework が内部 Entity Framework サービス用に独自のを作成して保守できるように IServiceProvider なります。

AddDbContext<TContext>(IServiceCollection, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。 このメソッドは、ASP.NET などを使用して、アプリケーションで依存関係の挿入を使用する場合に使用します。 依存関係の挿入の設定の詳細については、「」を参照してください http://go.microsoft.com/fwlink/?LinkId=526890

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, contextLifetime As ServiceLifetime) As IServiceCollection

型パラメーター

TContext

登録されるコンテキストの型。

パラメーター

serviceCollection
IServiceCollection

サービスを追加する先の IServiceCollection

contextLifetime
ServiceLifetime

コンテナーに DbContext サービスを登録するための有効期間。

戻り値

IServiceCollection

複数の呼び出しを連結できるようにするための同じサービスコレクション。

public void ConfigureServices(IServiceCollection services) 
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(ServiceLifetime.Scoped); 
}

適用対象

AddDbContext<TContext>(IServiceCollection, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, contextLifetime As ServiceLifetime, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

型パラメーター

TContext

登録されるコンテキストの型。

パラメーター

serviceCollection
IServiceCollection

サービスを追加する先の IServiceCollection

contextLifetime
ServiceLifetime

コンテナーに DbContext サービスを登録するための有効期間。

optionsLifetime
ServiceLifetime

DbContextOptions サービスをコンテナーに登録するために使用する有効期間。

戻り値

IServiceCollection

複数の呼び出しを連結できるようにするための同じサービスコレクション。

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(ServiceLifetime.Scoped);
}

適用対象

AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。 このメソッドは、ASP.NET などを使用して、アプリケーションで依存関係の挿入を使用する場合に使用します。 依存関係の挿入の設定の詳細については、「」を参照してください http://go.microsoft.com/fwlink/?LinkId=526890

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction = default, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, Optional optionsAction As Action(Of DbContextOptionsBuilder) = Nothing, Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

型パラメーター

TContext

登録されるコンテキストの型。

パラメーター

serviceCollection
IServiceCollection

サービスを追加する先の IServiceCollection

optionsAction
Action<DbContextOptionsBuilder>

コンテキストのを構成するためのオプションのアクション DbContextOptions 。 これにより、派生コンテキストのメソッドをオーバーライドすることによって、コンテキストの構成を実行することが OnConfiguring(DbContextOptionsBuilder) できます。

ここでアクションを指定した場合で OnConfiguring(DbContextOptionsBuilder) も、派生コンテキストでオーバーライドされていれば、メソッドは実行されます。 OnConfiguring(DbContextOptionsBuilder) ここで実行する構成に加えて、構成も適用されます。

オプションがコンテキストに渡されるようにするには、コンテキストでコンストラクターを公開して、 DbContextOptions<TContext> の基本コンストラクターに渡す必要があり DbContext ます。

contextLifetime
ServiceLifetime

コンテナーに DbContext サービスを登録するための有効期間。

戻り値

IServiceCollection

複数の呼び出しを連結できるようにするための同じサービスコレクション。

public void ConfigureServices(IServiceCollection services) 
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(options => options.UseSqlServer(connectionString)); 
}

適用対象

AddDbContext<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。 このメソッドは、ASP.NET などを使用して、アプリケーションで依存関係の挿入を使用する場合に使用します。 依存関係の挿入の設定の詳細については、「」を参照してください http://go.microsoft.com/fwlink/?LinkId=526890 。

このオーバーロードには、 optionsAction アプリケーションを提供するがあり IServiceProvider ます。 これは、プライマリアプリケーションサービスプロバイダーからの内部サービスを解決するために Entity Framework を設定する場合に便利です。 既定では、他のオーバーロードを使用することをお勧めします。これにより、Entity Framework で独自のオーバーロードを作成して維持することができます。 IServiceProvider 内部 Entity Framework サービスの場合。

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

型パラメーター

TContext

登録されるコンテキストの型。

パラメーター

serviceCollection
IServiceCollection

サービスを追加する先の IServiceCollection

optionsAction
Action<IServiceProvider,DbContextOptionsBuilder>

コンテキストのを構成するためのオプションのアクション DbContextOptions 。 これにより、派生コンテキストのメソッドをオーバーライドすることによって、コンテキストの構成を実行することが OnConfiguring(DbContextOptionsBuilder) できます。

ここでアクションを指定した場合で OnConfiguring(DbContextOptionsBuilder) も、派生コンテキストでオーバーライドされていれば、メソッドは実行されます。 OnConfiguring(DbContextOptionsBuilder) ここで実行する構成に加えて、構成も適用されます。

オプションがコンテキストに渡されるようにするには、コンテキストでコンストラクターを公開して、 DbContextOptions<TContext> の基本コンストラクターに渡す必要があり DbContext ます。

contextLifetime
ServiceLifetime

コンテナーに DbContext サービスを登録するための有効期間。

戻り値

IServiceCollection

複数の呼び出しを連結できるようにするための同じサービスコレクション。

public void ConfigureServices(IServiceCollection services) 
{
    var connectionString = "connection string to database";

    services
        .AddEntityFrameworkSqlServer()
        .AddDbContext<MyContext>((serviceProvider, options) => 
            options.UseSqlServer(connectionString)
                   .UseInternalServiceProvider(serviceProvider)); 
}

適用対象

AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction = default, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, Optional optionsAction As Action(Of DbContextOptionsBuilder) = Nothing, Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

型パラメーター

TContext

登録されるコンテキストの型。

パラメーター

serviceCollection
IServiceCollection

サービスを追加する先の IServiceCollection

optionsAction
Action<DbContextOptionsBuilder>

コンテキストのを構成するためのオプションのアクション DbContextOptions 。 これにより、派生コンテキストのメソッドをオーバーライドすることによって、コンテキストの構成を実行することが OnConfiguring(DbContextOptionsBuilder) できます。

ここでアクションを指定した場合で OnConfiguring(DbContextOptionsBuilder) も、派生コンテキストでオーバーライドされていれば、メソッドは実行されます。 OnConfiguring(DbContextOptionsBuilder) ここで実行する構成に加えて、構成も適用されます。

オプションがコンテキストに渡されるようにするには、コンテキストでコンストラクターを公開して、 DbContextOptions<TContext> の基本コンストラクターに渡す必要があり DbContext ます。

contextLifetime
ServiceLifetime

コンテナーに DbContext サービスを登録するための有効期間。

optionsLifetime
ServiceLifetime

DbContextOptions サービスをコンテナーに登録するために使用する有効期間。

戻り値

IServiceCollection

複数の呼び出しを連結できるようにするための同じサービスコレクション。

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(options => options.UseSqlServer(connectionString));
}

適用対象

AddDbContext<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

このオーバーロードには、 optionsAction アプリケーションのを提供するがあり IServiceProvider ます。 これは、プライマリアプリケーションサービスプロバイダーからの内部サービスを解決するために Entity Framework Core を設定する場合に便利です。 既定では、を使用することをお勧めします。 AddDbContext<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime) これにより、Entity Framework が内部 Entity Framework サービス用に独自のを作成して保守できるように IServiceProvider なります。

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContext(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

型パラメーター

TContext

登録されるコンテキストの型。

パラメーター

serviceCollection
IServiceCollection

サービスを追加する先の IServiceCollection

optionsAction
Action<IServiceProvider,DbContextOptionsBuilder>

コンテキストのを構成するためのオプションのアクション DbContextOptions 。 これにより、派生コンテキストのメソッドをオーバーライドすることによって、コンテキストの構成を実行することが OnConfiguring(DbContextOptionsBuilder) できます。

ここでアクションを指定した場合で OnConfiguring(DbContextOptionsBuilder) も、派生コンテキストでオーバーライドされていれば、メソッドは実行されます。 OnConfiguring(DbContextOptionsBuilder) ここで実行する構成に加えて、構成も適用されます。

オプションがコンテキストに渡されるようにするには、コンテキストでコンストラクターを公開して、 DbContextOptions<TContext> の基本コンストラクターに渡す必要があり DbContext ます。

contextLifetime
ServiceLifetime

コンテナーに DbContext サービスを登録するための有効期間。

optionsLifetime
ServiceLifetime

DbContextOptions サービスをコンテナーに登録するために使用する有効期間。

戻り値

IServiceCollection

複数の呼び出しを連結できるようにするための同じサービスコレクション。

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services
        .AddEntityFrameworkSqlServer()
        .AddDbContext<MyContext>((serviceProvider, options) =>
            options.UseSqlServer(connectionString)
                   .UseInternalServiceProvider(serviceProvider));
}

適用対象

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContextService : class where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'ContextService : null and 'ContextImplementation :> Microsoft.EntityFrameworkCore.DbContext and 'ContextImplementation :> 'ContextService)
<Extension()>
Public Function AddDbContext(Of TContextService As Class, TContextImplementation As Class) (serviceCollection As IServiceCollection, contextLifetime As ServiceLifetime, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

型パラメーター

TContextService

コンテナーからコンテキストを解決するために使用されるクラスまたはインターフェイス。

TContextImplementation

作成する具象実装型。

パラメーター

serviceCollection
IServiceCollection

サービスを追加する先の IServiceCollection

contextLifetime
ServiceLifetime

コンテナーに DbContext サービスを登録するための有効期間。

optionsLifetime
ServiceLifetime

DbContextOptions サービスをコンテナーに登録するために使用する有効期間。

戻り値

IServiceCollection

複数の呼び出しを連結できるようにするための同じサービスコレクション。

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(ServiceLifetime.Scoped);
}

適用対象

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction = default, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'ContextImplementation :> Microsoft.EntityFrameworkCore.DbContext and 'ContextImplementation :> 'ContextService)
<Extension()>
Public Function AddDbContext(Of TContextService, TContextImplementation) (serviceCollection As IServiceCollection, Optional optionsAction As Action(Of DbContextOptionsBuilder) = Nothing, Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

型パラメーター

TContextService

コンテナーからコンテキストを解決するために使用されるクラスまたはインターフェイス。

TContextImplementation

作成する具象実装型。

パラメーター

serviceCollection
IServiceCollection

サービスを追加する先の IServiceCollection

optionsAction
Action<DbContextOptionsBuilder>

コンテキストのを構成するためのオプションのアクション DbContextOptions 。 これにより、派生コンテキストのメソッドをオーバーライドすることによって、コンテキストの構成を実行することが OnConfiguring(DbContextOptionsBuilder) できます。

ここでアクションを指定した場合で OnConfiguring(DbContextOptionsBuilder) も、派生コンテキストでオーバーライドされていれば、メソッドは実行されます。 OnConfiguring(DbContextOptionsBuilder) ここで実行する構成に加えて、構成も適用されます。

オプションがコンテキストに渡されるようにするには、コンテキストでコンストラクターを公開して、 DbContextOptions<TContext> の基本コンストラクターに渡す必要があり DbContext ます。

contextLifetime
ServiceLifetime

コンテナーに DbContext サービスを登録するための有効期間。

optionsLifetime
ServiceLifetime

DbContextOptions サービスをコンテナーに登録するために使用する有効期間。

戻り値

IServiceCollection

複数の呼び出しを連結できるようにするための同じサービスコレクション。

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services.AddDbContext<MyContext>(options => options.UseSqlServer(connectionString));
}

適用対象

AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime)

指定されたコンテキストをのサービスとして登録し IServiceCollection ます。

ASP.NET Core などのアプリケーションで依存関係の挿入を使用する場合は、このメソッドを使用します。 依存関係の挿入を使用しないアプリケーションでは、 DbContext コンストラクターを使用して直接インスタンスを作成することを検討してください。 その OnConfiguring(DbContextOptionsBuilder) 後、メソッドをオーバーライドして、接続文字列やその他のオプションを構成できます。

この方法の使用方法の詳細については、「」の Entity Framework Core のドキュメントを参照してください https://aka.ms/efdocs 。 依存関係の挿入の使用の詳細については、「」を参照してください https://go.microsoft.com/fwlink/?LinkId=526890 。

このオーバーロードには、 optionsAction アプリケーションのを提供するがあり IServiceProvider ます。 これは、プライマリアプリケーションサービスプロバイダーからの内部サービスを解決するために Entity Framework Core を設定する場合に便利です。 既定では、を使用することをお勧めします。 AddDbContext<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, ServiceLifetime, ServiceLifetime) これにより、Entity Framework が内部 Entity Framework サービス用に独自のを作成して保守できるように IServiceProvider なります。

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContext<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, Microsoft.Extensions.DependencyInjection.ServiceLifetime contextLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Microsoft.Extensions.DependencyInjection.ServiceLifetime optionsLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
static member AddDbContext : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * Microsoft.Extensions.DependencyInjection.ServiceLifetime * Microsoft.Extensions.DependencyInjection.ServiceLifetime -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'ContextImplementation :> Microsoft.EntityFrameworkCore.DbContext and 'ContextImplementation :> 'ContextService)
<Extension()>
Public Function AddDbContext(Of TContextService, TContextImplementation) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional contextLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped, Optional optionsLifetime As ServiceLifetime = Microsoft.Extensions.DependencyInjection.ServiceLifetime.Scoped) As IServiceCollection

型パラメーター

TContextService

コンテナーからコンテキストを解決するために使用されるクラスまたはインターフェイス。

TContextImplementation

作成する具象実装型。

パラメーター

serviceCollection
IServiceCollection

サービスを追加する先の IServiceCollection

optionsAction
Action<IServiceProvider,DbContextOptionsBuilder>

コンテキストのを構成するためのオプションのアクション DbContextOptions 。 これにより、派生コンテキストのメソッドをオーバーライドすることによって、コンテキストの構成を実行することが OnConfiguring(DbContextOptionsBuilder) できます。

ここでアクションを指定した場合で OnConfiguring(DbContextOptionsBuilder) も、派生コンテキストでオーバーライドされていれば、メソッドは実行されます。 OnConfiguring(DbContextOptionsBuilder) ここで実行する構成に加えて、構成も適用されます。

オプションがコンテキストに渡されるようにするには、コンテキストでコンストラクターを公開して、 DbContextOptions<TContext> の基本コンストラクターに渡す必要があり DbContext ます。

contextLifetime
ServiceLifetime

コンテナーに DbContext サービスを登録するための有効期間。

optionsLifetime
ServiceLifetime

DbContextOptions サービスをコンテナーに登録するために使用する有効期間。

戻り値

IServiceCollection

複数の呼び出しを連結できるようにするための同じサービスコレクション。

public void ConfigureServices(IServiceCollection services)
{
    var connectionString = "connection string to database";

    services
        .AddEntityFrameworkSqlServer()
        .AddDbContext<MyContext>((serviceProvider, options) =>
            options.UseSqlServer(connectionString)
                   .UseInternalServiceProvider(serviceProvider));
}

適用対象