EntityFrameworkServiceCollectionExtensions.AddDbContextPool Yöntem

Tanım

Aşırı Yüklemeler

AddDbContextPool<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32)

, DbContext ' A bir hizmet olarak kaydeder IServiceCollection ve bu kayıt Için DbContext kuyruğunu etkinleştirilir.

DbContext Pooling, bağlam örneklerini yeniden kullanarak yüksek aktarım hızı senaryolarında performansı artırabilir. Ancak çoğu uygulama için bu performans kazancı çok küçüktür. Havuz kullanırken bağlam yapılandırması kullanımları arasında değişemeyeceğini ve bağlam içine eklenen kapsamlı hizmetlerin yalnızca ilk kapsamdan bir kez çözümlendiğini unutmayın. Yalnızca performans testi, gerçek bir artırma sağladığını gösteriyorsa, DbContext havuzu kullanmayı düşünün.

Uygulamanızda ASP.NET Core gibi bağımlılık ekleme işlemini kullanırken bu yöntemi kullanın. Bağımlılık ekleme 'yi kullanmayan uygulamalar için, DbContext Oluşturucu ile doğrudan örnek oluşturmayı düşünün. OnConfiguring(DbContextOptionsBuilder)Daha sonra yöntemi bir bağlantı dizesi ve diğer seçenekleri yapılandırmak için geçersiz kılınabilir.

Entity Framework Core, aynı örnekte çalıştırılan birden çok paralel işlemi desteklemez DbContext . Bu, zaman uyumsuz sorguların paralel yürütmesini ve birden çok iş parçacığından açık olan eşzamanlı kullanımı içerir. Bu nedenle, her zaman zaman uyumsuz çağrıları bekler veya paralel olarak yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi için bkz. DbContext Threading sorunlarını önleme .

Daha fazla bilgi için bkz. bağımlılık ekleme ve DbContext havuzunu kullanma Ile DbContext kullanma .

AddDbContextPool<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, Int32)

, DbContext ' A bir hizmet olarak kaydeder IServiceCollection ve bu kayıt Için DbContext kuyruğunu etkinleştirilir.

DbContext Pooling, bağlam örneklerini yeniden kullanarak yüksek aktarım hızı senaryolarında performansı artırabilir. Ancak çoğu uygulama için bu performans kazancı çok küçüktür. Havuz kullanırken bağlam yapılandırması kullanımları arasında değişemeyeceğini ve bağlam içine eklenen kapsamlı hizmetlerin yalnızca ilk kapsamdan bir kez çözümlendiğini unutmayın. Yalnızca performans testi, gerçek bir artırma sağladığını gösteriyorsa, DbContext havuzu kullanmayı düşünün.

Uygulamanızda ASP.NET Core gibi bağımlılık ekleme işlemini kullanırken bu yöntemi kullanın. Bağımlılık ekleme 'yi kullanmayan uygulamalar için, DbContext Oluşturucu ile doğrudan örnek oluşturmayı düşünün. OnConfiguring(DbContextOptionsBuilder)Daha sonra yöntemi bir bağlantı dizesi ve diğer seçenekleri yapılandırmak için geçersiz kılınabilir.

Entity Framework Core, aynı örnekte çalıştırılan birden çok paralel işlemi desteklemez DbContext . Bu, zaman uyumsuz sorguların paralel yürütmesini ve birden çok iş parçacığından açık olan eşzamanlı kullanımı içerir. Bu nedenle, her zaman zaman uyumsuz çağrıları bekler veya paralel olarak yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi için bkz. DbContext Threading sorunlarını önleme .

Daha fazla bilgi için bkz. bağımlılık ekleme ve DbContext havuzunu kullanma Ile DbContext kullanma .

Bu aşırı yükleme, uygulamanın ' i sağlayan bir öğesine sahiptir optionsAction IServiceProvider . Bu, iç hizmetlerini birincil uygulama hizmeti sağlayıcısından çözümlemek üzere Entity Framework Core ayarlamak istiyorsanız kullanışlıdır. Varsayılan olarak, AddDbContextPool<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32) Entity Framework IServiceProvider iç Entity Framework Hizmetleri için kendi oluşturup bakımını yapmasına izin veren kullanmanızı öneririz.

AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32)

Verilen hizmetini içinde DbContext bir hizmet olarak IServiceCollection kaydettirerek bu kayıt için DbContext havuzunu sağlar.

DbContext havuzu, bağlam örneklerini yeniden kullanarak yüksek aktarım hızı senaryolarında performansı artırabilir. Ancak çoğu uygulama için bu performans kazancı çok küçüktür. Havuz kullanırken bağlam yapılandırmasının kullanımlar arasında değişemezse ve bağlama ekleme yapılan kapsamlı hizmetlerin ilk kapsamdan yalnızca bir kez çözülmüş olacağını unutmayın. Yalnızca performans testi gerçek bir artış sağladığını gösteriyorken DbContext havuzu kullanmayı göz önünde bulundurabilirsiniz.

Uygulamanıza bağımlılık ekleme kullanırken bu yöntemi kullanın, örneğin, ASP.NET Core. Bağımlılık ekleme kullanmayan uygulamalar için, doğrudan oluşturucusu DbContext ile örnekler oluşturmayı göz önünde bulundurabilirsiniz. Yöntem OnConfiguring(DbContextOptionsBuilder) daha sonra bir bağlantı dizesini ve diğer seçenekleri yapılandırmak için geçersiz kılınabilir.

Entity Framework Core aynı örnekte birden çok paralel işlem çalıştırmayı DbContext desteklemez. Bu, zaman uyumsuz sorguların paralel yürütülmesini ve birden çok iş parçacığından yapılan açık eşzamanlı kullanımı içerir. Bu nedenle, her zaman zaman uyumsuz çağrıları hemen bekler veya paralel yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi için bkz. DbContext iş parçacığı sorunlarından kaçınma.

Daha fazla bilgi için bkz. Bağımlılık ekleme ile DbContext kullanma ve DbContext havuzu kullanma.

AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, Int32)

Verilen hizmetini içinde DbContext bir hizmet olarak IServiceCollection kaydettirerek bu kayıt için DbContext havuzunu sağlar.

DbContext havuzu, bağlam örneklerini yeniden kullanarak yüksek aktarım hızı senaryolarında performansı artırabilir. Ancak çoğu uygulama için bu performans kazancı çok küçüktür. Havuz kullanırken bağlam yapılandırmasının kullanımlar arasında değişemezse ve bağlama ekleme yapılan kapsamlı hizmetlerin ilk kapsamdan yalnızca bir kez çözülmüş olacağını unutmayın. Yalnızca performans testi gerçek bir artış sağladığını gösteriyorken DbContext havuzu kullanmayı göz önünde bulundurabilirsiniz.

Uygulamanıza bağımlılık ekleme kullanırken bu yöntemi kullanın, örneğin, ASP.NET Core. Bağımlılık ekleme kullanmayan uygulamalar için, doğrudan oluşturucusu DbContext ile örnekler oluşturmayı göz önünde bulundurabilirsiniz. Yöntem OnConfiguring(DbContextOptionsBuilder) daha sonra bir bağlantı dizesini ve diğer seçenekleri yapılandırmak için geçersiz kılınabilir.

Entity Framework Core aynı örnekte birden çok paralel işlem çalıştırmayı DbContext desteklemez. Bu, zaman uyumsuz sorguların paralel yürütülmesini ve birden çok iş parçacığından yapılan açık eşzamanlı kullanımı içerir. Bu nedenle, her zaman zaman uyumsuz çağrıları hemen bekler veya paralel yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi için bkz. DbContext iş parçacığı sorunlarından kaçınma.

Daha fazla bilgi için bkz. Bağımlılık ekleme ile DbContext kullanma ve DbContext havuzu kullanma.

Bu aşırı yükleme, optionsAction uygulamanın 'lerini sağlayan bir 'a IServiceProvider sahip. Bu, şirket içi hizmetlerini birincil uygulama Entity Framework Core çözümleyecek şekilde ayar yapmak için kullanışlıdır. Varsayılan olarak, AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32) bu sayede Entity Framework hizmetleri için kendi Entity Framework IServiceProvider sağlar.

AddDbContextPool<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32)

, DbContext ' A bir hizmet olarak kaydeder IServiceCollection ve bu kayıt Için DbContext kuyruğunu etkinleştirilir.

DbContext Pooling, bağlam örneklerini yeniden kullanarak yüksek aktarım hızı senaryolarında performansı artırabilir. Ancak çoğu uygulama için bu performans kazancı çok küçüktür. Havuz kullanırken bağlam yapılandırması kullanımları arasında değişemeyeceğini ve bağlam içine eklenen kapsamlı hizmetlerin yalnızca ilk kapsamdan bir kez çözümlendiğini unutmayın. Yalnızca performans testi, gerçek bir artırma sağladığını gösteriyorsa, DbContext havuzu kullanmayı düşünün.

Uygulamanızda ASP.NET Core gibi bağımlılık ekleme işlemini kullanırken bu yöntemi kullanın. Bağımlılık ekleme 'yi kullanmayan uygulamalar için, DbContext Oluşturucu ile doğrudan örnek oluşturmayı düşünün. OnConfiguring(DbContextOptionsBuilder)Daha sonra yöntemi bir bağlantı dizesi ve diğer seçenekleri yapılandırmak için geçersiz kılınabilir.

Entity Framework Core, aynı örnekte çalıştırılan birden çok paralel işlemi desteklemez DbContext . Bu, zaman uyumsuz sorguların paralel yürütmesini ve birden çok iş parçacığından açık olan eşzamanlı kullanımı içerir. Bu nedenle, her zaman zaman uyumsuz çağrıları bekler veya paralel olarak yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi için bkz. DbContext Threading sorunlarını önleme .

Daha fazla bilgi için bkz. bağımlılık ekleme ve DbContext havuzunu kullanma Ile DbContext kullanma .

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 128) where TContext : Microsoft.EntityFrameworkCore.DbContext;
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 1024) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContextPool : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContextPool(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of DbContextOptionsBuilder), Optional poolSize As Integer = 128) As IServiceCollection
<Extension()>
Public Function AddDbContextPool(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of DbContextOptionsBuilder), Optional poolSize As Integer = 1024) As IServiceCollection

Tür Parametreleri

TContext

Kaydedilecek bağlamın türü.

Parametreler

serviceCollection
IServiceCollection

IServiceCollectionHizmet eklemek için.

optionsAction
Action<DbContextOptionsBuilder>

Bağlamını yapılandırmak için gerekli bir eylem DbContextOptions . Bağlam havuzu kullanırken, Seçenekler yapılandırması dışarıdan gerçekleştirilmelidir; OnConfiguring(DbContextOptionsBuilder) çağrılmayacak.

poolSize
Int32

Havuz tarafından tutulan en fazla örnek sayısını ayarlar. Varsayılan olarak 1024 ' dir.

Döndürülenler

IServiceCollection

Birden çok çağrının zincirleme kullanılabilmesi için aynı hizmet koleksiyonu.

Şunlara uygulanır

AddDbContextPool<TContext>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, Int32)

, DbContext ' A bir hizmet olarak kaydeder IServiceCollection ve bu kayıt Için DbContext kuyruğunu etkinleştirilir.

DbContext Pooling, bağlam örneklerini yeniden kullanarak yüksek aktarım hızı senaryolarında performansı artırabilir. Ancak çoğu uygulama için bu performans kazancı çok küçüktür. Havuz kullanırken bağlam yapılandırması kullanımları arasında değişemeyeceğini ve bağlam içine eklenen kapsamlı hizmetlerin yalnızca ilk kapsamdan bir kez çözümlendiğini unutmayın. Yalnızca performans testi, gerçek bir artırma sağladığını gösteriyorsa, DbContext havuzu kullanmayı düşünün.

Uygulamanızda ASP.NET Core gibi bağımlılık ekleme işlemini kullanırken bu yöntemi kullanın. Bağımlılık ekleme 'yi kullanmayan uygulamalar için, DbContext Oluşturucu ile doğrudan örnek oluşturmayı düşünün. OnConfiguring(DbContextOptionsBuilder)Daha sonra yöntemi bir bağlantı dizesi ve diğer seçenekleri yapılandırmak için geçersiz kılınabilir.

Entity Framework Core, aynı örnekte çalıştırılan birden çok paralel işlemi desteklemez DbContext . Bu, zaman uyumsuz sorguların paralel yürütmesini ve birden çok iş parçacığından açık olan eşzamanlı kullanımı içerir. Bu nedenle, her zaman zaman uyumsuz çağrıları bekler veya paralel olarak yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi için bkz. DbContext Threading sorunlarını önleme .

Daha fazla bilgi için bkz. bağımlılık ekleme ve DbContext havuzunu kullanma Ile DbContext kullanma .

Bu aşırı yükleme, uygulamanın ' i sağlayan bir öğesine sahiptir optionsAction IServiceProvider . Bu, iç hizmetlerini birincil uygulama hizmeti sağlayıcısından çözümlemek üzere Entity Framework Core ayarlamak istiyorsanız kullanışlıdır. Varsayılan olarak, AddDbContextPool<TContext>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32) Entity Framework IServiceProvider iç Entity Framework Hizmetleri için kendi oluşturup bakımını yapmasına izin veren kullanmanızı öneririz.

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 128) where TContext : Microsoft.EntityFrameworkCore.DbContext;
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContext> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 1024) where TContext : Microsoft.EntityFrameworkCore.DbContext;
static member AddDbContextPool : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'Context :> Microsoft.EntityFrameworkCore.DbContext)
<Extension()>
Public Function AddDbContextPool(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional poolSize As Integer = 128) As IServiceCollection
<Extension()>
Public Function AddDbContextPool(Of TContext As DbContext) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional poolSize As Integer = 1024) As IServiceCollection

Tür Parametreleri

TContext

Kaydedilecek bağlamın türü.

Parametreler

serviceCollection
IServiceCollection

IServiceCollectionHizmet eklemek için.

optionsAction
Action<IServiceProvider,DbContextOptionsBuilder>

Bağlamını yapılandırmak için gerekli bir eylem DbContextOptions . Bağlam havuzu kullanırken, Seçenekler yapılandırması dışarıdan gerçekleştirilmelidir; OnConfiguring(DbContextOptionsBuilder) çağrılmayacak.

poolSize
Int32

Havuz tarafından tutulan en fazla örnek sayısını ayarlar. Varsayılan olarak 1024 ' dir.

Döndürülenler

IServiceCollection

Birden çok çağrının zincirleme kullanılabilmesi için aynı hizmet koleksiyonu.

Şunlara uygulanır

AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32)

Verilen hizmetini içinde DbContext bir hizmet olarak IServiceCollection kaydettirerek bu kayıt için DbContext havuzunu sağlar.

DbContext havuzu, bağlam örneklerini yeniden kullanarak yüksek aktarım hızı senaryolarında performansı artırabilir. Ancak çoğu uygulama için bu performans kazancı çok küçüktür. Havuz kullanırken bağlam yapılandırmasının kullanımlar arasında değişemezse ve bağlama ekleme yapılan kapsamlı hizmetlerin ilk kapsamdan yalnızca bir kez çözülmüş olacağını unutmayın. Yalnızca performans testi gerçek bir artış sağladığını gösteriyorken DbContext havuzu kullanmayı göz önünde bulundurabilirsiniz.

Uygulamanıza bağımlılık ekleme kullanırken bu yöntemi kullanın, örneğin, ASP.NET Core. Bağımlılık ekleme kullanmayan uygulamalar için, doğrudan oluşturucusu DbContext ile örnekler oluşturmayı göz önünde bulundurabilirsiniz. Yöntem OnConfiguring(DbContextOptionsBuilder) daha sonra bir bağlantı dizesini ve diğer seçenekleri yapılandırmak için geçersiz kılınabilir.

Entity Framework Core aynı örnekte birden çok paralel işlem çalıştırmayı DbContext desteklemez. Bu, zaman uyumsuz sorguların paralel yürütülmesini ve birden çok iş parçacığından yapılan açık eşzamanlı kullanımı içerir. Bu nedenle, her zaman zaman uyumsuz çağrıları hemen bekler veya paralel yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi için bkz. DbContext iş parçacığı sorunlarından kaçınma.

Daha fazla bilgi için bkz. Bağımlılık ekleme ile DbContext kullanma ve DbContext havuzu kullanma.

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 128) where TContextService : class where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 1024) where TContextService : class where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
static member AddDbContextPool : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'ContextService : null and 'ContextImplementation :> Microsoft.EntityFrameworkCore.DbContext and 'ContextImplementation :> 'ContextService)
<Extension()>
Public Function AddDbContextPool(Of TContextService As Class, TContextImplementation As Class) (serviceCollection As IServiceCollection, optionsAction As Action(Of DbContextOptionsBuilder), Optional poolSize As Integer = 128) As IServiceCollection
<Extension()>
Public Function AddDbContextPool(Of TContextService As Class, TContextImplementation As Class) (serviceCollection As IServiceCollection, optionsAction As Action(Of DbContextOptionsBuilder), Optional poolSize As Integer = 1024) As IServiceCollection

Tür Parametreleri

TContextService

Kapsayıcıdan bağlamı çözümlemek için kullanılacak sınıf veya arabirim.

TContextImplementation

Oluşturulacağız somut uygulama türü.

Parametreler

serviceCollection
IServiceCollection

Hizmetleri IServiceCollection eklemek için .

optionsAction
Action<DbContextOptionsBuilder>

Bağlam için yapılandırmak için DbContextOptions gerekli bir eylem. Bağlam havuzu kullanırken, seçenek yapılandırması harici olarak gerçekleştir yapılmalıdır; OnConfiguring(DbContextOptionsBuilder) çağrılmayacak.

poolSize
Int32

Havuz tarafından eldeki en fazla örnek sayısını ayarlar. Varsayılan değer 1024'tir.

Döndürülenler

IServiceCollection

Birden çok çağrının zincirlenene kadar aynı hizmet koleksiyonu.

Şunlara uygulanır

AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<IServiceProvider,DbContextOptionsBuilder>, Int32)

Verilen hizmetini içinde DbContext bir hizmet olarak IServiceCollection kaydettirerek bu kayıt için DbContext havuzunu sağlar.

DbContext havuzu, bağlam örneklerini yeniden kullanarak yüksek aktarım hızı senaryolarında performansı artırabilir. Ancak çoğu uygulama için bu performans kazancı çok küçüktür. Havuz kullanırken bağlam yapılandırmasının kullanımlar arasında değişemezse ve bağlama ekleme yapılan kapsamlı hizmetlerin ilk kapsamdan yalnızca bir kez çözülmüş olacağını unutmayın. Yalnızca performans testi gerçek bir artış sağladığını gösteriyorken DbContext havuzu kullanmayı göz önünde bulundurabilirsiniz.

Uygulamanıza bağımlılık ekleme kullanırken bu yöntemi kullanın, örneğin, ASP.NET Core. Bağımlılık ekleme kullanmayan uygulamalar için, doğrudan oluşturucusu DbContext ile örnekler oluşturmayı göz önünde bulundurabilirsiniz. Yöntem OnConfiguring(DbContextOptionsBuilder) daha sonra bir bağlantı dizesini ve diğer seçenekleri yapılandırmak için geçersiz kılınabilir.

Entity Framework Core aynı örnekte birden çok paralel işlem çalıştırmayı DbContext desteklemez. Bu, zaman uyumsuz sorguların paralel yürütülmesini ve birden çok iş parçacığından yapılan açık eşzamanlı kullanımı içerir. Bu nedenle, her zaman zaman uyumsuz çağrıları hemen bekler veya paralel yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi için bkz. DbContext iş parçacığı sorunlarından kaçınma.

Daha fazla bilgi için bkz. Bağımlılık ekleme ile DbContext kullanma ve DbContext havuzu kullanma.

Bu aşırı yükleme, optionsAction uygulamanın 'lerini sağlayan bir 'a IServiceProvider sahip. Bu, şirket içi hizmetlerini birincil uygulama Entity Framework Core çözümleyecek şekilde ayar yapmak için kullanışlıdır. Varsayılan olarak, AddDbContextPool<TContextService,TContextImplementation>(IServiceCollection, Action<DbContextOptionsBuilder>, Int32) bu sayede Entity Framework hizmetleri için kendi Entity Framework IServiceProvider sağlar.

public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 128) where TContextService : class where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
public static Microsoft.Extensions.DependencyInjection.IServiceCollection AddDbContextPool<TContextService,TContextImplementation> (this Microsoft.Extensions.DependencyInjection.IServiceCollection serviceCollection, Action<IServiceProvider,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> optionsAction, int poolSize = 1024) where TContextService : class where TContextImplementation : Microsoft.EntityFrameworkCore.DbContext, TContextService;
static member AddDbContextPool : Microsoft.Extensions.DependencyInjection.IServiceCollection * Action<IServiceProvider, Microsoft.EntityFrameworkCore.DbContextOptionsBuilder> * int -> Microsoft.Extensions.DependencyInjection.IServiceCollection (requires 'ContextService : null and 'ContextImplementation :> Microsoft.EntityFrameworkCore.DbContext and 'ContextImplementation :> 'ContextService)
<Extension()>
Public Function AddDbContextPool(Of TContextService As Class, TContextImplementation As Class) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional poolSize As Integer = 128) As IServiceCollection
<Extension()>
Public Function AddDbContextPool(Of TContextService As Class, TContextImplementation As Class) (serviceCollection As IServiceCollection, optionsAction As Action(Of IServiceProvider, DbContextOptionsBuilder), Optional poolSize As Integer = 1024) As IServiceCollection

Tür Parametreleri

TContextService

Kapsayıcıdan bağlamı çözümlemek için kullanılacak sınıf veya arabirim.

TContextImplementation

Oluşturulacağız somut uygulama türü.

Parametreler

serviceCollection
IServiceCollection

Hizmetleri IServiceCollection eklemek için .

optionsAction
Action<IServiceProvider,DbContextOptionsBuilder>

Bağlam için yapılandırmak için DbContextOptions gerekli bir eylem. Bağlam havuzu kullanırken, seçenek yapılandırması harici olarak gerçekleştir yapılmalıdır; OnConfiguring(DbContextOptionsBuilder) çağrılmayacak.

poolSize
Int32

Havuz tarafından eldeki en fazla örnek sayısını ayarlar. Varsayılan değer 1024'tir.

Döndürülenler

IServiceCollection

Birden çok çağrının zincirlenene kadar aynı hizmet koleksiyonu.

Şunlara uygulanır