Dil

DbContext Sınıf

Tanım

DbContext örneği, veritabanıyla bir oturumu temsil eder ve varlıklarınızın örneklerini sorgulamak ve kaydetmek için kullanılabilir. DbContext, İş Birimi ve Depo desenlerinin bir bileşimidir.

public class DbContext : IDisposable, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<IServiceProvider>
[System.Runtime.CompilerServices.Nullable(0)]
public class DbContext : IAsyncDisposable, IDisposable, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<IServiceProvider>, Microsoft.EntityFrameworkCore.Internal.IDbContextDependencies, Microsoft.EntityFrameworkCore.Internal.IDbContextPoolable, Microsoft.EntityFrameworkCore.Internal.IDbSetCache
public class DbContext : IDisposable, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<IServiceProvider>, Microsoft.EntityFrameworkCore.Internal.IDbContextDependencies, Microsoft.EntityFrameworkCore.Internal.IDbContextPoolable, Microsoft.EntityFrameworkCore.Internal.IDbSetCache
public class DbContext : IDisposable, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<IServiceProvider>, Microsoft.EntityFrameworkCore.Internal.IDbContextDependencies, Microsoft.EntityFrameworkCore.Internal.IDbContextPoolable, Microsoft.EntityFrameworkCore.Internal.IDbQueryCache, Microsoft.EntityFrameworkCore.Internal.IDbSetCache
public class DbContext : IAsyncDisposable, IDisposable, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<IServiceProvider>, Microsoft.EntityFrameworkCore.Internal.IDbContextDependencies, Microsoft.EntityFrameworkCore.Internal.IDbContextPoolable, Microsoft.EntityFrameworkCore.Internal.IDbSetCache
type DbContext = class
    interface IDisposable
    interface IInfrastructure<IServiceProvider>
[<System.Runtime.CompilerServices.Nullable(0)>]
type DbContext = class
    interface IInfrastructure<IServiceProvider>
    interface IDbContextDependencies
    interface IDbSetCache
    interface IDbContextPoolable
    interface IResettableService
    interface IDisposable
    interface IAsyncDisposable
type DbContext = class
    interface IDisposable
    interface IInfrastructure<IServiceProvider>
    interface IDbContextDependencies
    interface IDbSetCache
    interface IDbContextPoolable
type DbContext = class
    interface IDisposable
    interface IInfrastructure<IServiceProvider>
    interface IDbContextDependencies
    interface IDbSetCache
    interface IDbQueryCache
    interface IDbContextPoolable
type DbContext = class
    interface IDisposable
    interface IAsyncDisposable
    interface IInfrastructure<IServiceProvider>
    interface IDbContextDependencies
    interface IDbSetCache
    interface IDbContextPoolable
    interface IResettableService
type DbContext = class
    interface IInfrastructure<IServiceProvider>
    interface IDbContextDependencies
    interface IDbSetCache
    interface IDbContextPoolable
    interface IResettableService
    interface IDisposable
    interface IAsyncDisposable
Public Class DbContext
Implements IDisposable, IInfrastructure(Of IServiceProvider)
Public Class DbContext
Implements IAsyncDisposable, IDbContextDependencies, IDbContextPoolable, IDbSetCache, IDisposable, IInfrastructure(Of IServiceProvider)
Public Class DbContext
Implements IDbContextDependencies, IDbContextPoolable, IDbSetCache, IDisposable, IInfrastructure(Of IServiceProvider)
Public Class DbContext
Implements IDbContextDependencies, IDbContextPoolable, IDbQueryCache, IDbSetCache, IDisposable, IInfrastructure(Of IServiceProvider)
Devralma
DbContext
Özellikler
Uygulamalar
IInfrastructure<IServiceProvider> IDisposable IResettableService Microsoft.EntityFrameworkCore.Internal.IDbContextDependencies Microsoft.EntityFrameworkCore.Internal.IDbContextPoolable Microsoft.EntityFrameworkCore.Internal.IDbSetCache IAsyncDisposable Microsoft.EntityFrameworkCore.Internal.IDbQueryCache

Açıklamalar

Entity Framework Core aynı DbContext örneğinde çalıştırılan birden çok paralel işlemi desteklemez. Buna hem zaman uyumsuz sorguların paralel yürütülmesi hem de birden çok iş parçacığından açık eş zamanlı kullanım dahildir. Bu nedenle, her zaman zaman uyumsuz çağrıları hemen bekleyin veya paralel olarak yürütülen işlemler için ayrı DbContext örnekleri kullanın. Daha fazla bilgi ve örnek için bkz. DbContext iş parçacığı oluşturma sorunlarını önleme .

Genellikle DbContext'ten türetilen ve modeldeki her varlığın özelliklerini içeren DbSet<TEntity> bir sınıf oluşturursunuz. DbSet<TEntity> Özellikler ortak bir ayarlayıcıya sahipse, türetilmiş bağlam örneği oluşturulduğunda otomatik olarak başlatılır.

OnConfiguring(DbContextOptionsBuilder) Bağlam için kullanılacak veritabanını (ve diğer seçenekleri) yapılandırmak için yöntemini geçersiz kılın. Alternatif olarak, bağlamınızdaki satır içi yerine yapılandırmayı harici olarak gerçekleştirmek isterseniz, (veya ) kullanarak DbContextOptionsBuilder<TContext> bir örneğini DbContextOptions<TContext> (veya DbContextOptions) dışarıdan oluşturabilir ve bunu temel oluşturucusunda DbContextgeçirebilirsiniz.DbContextOptionsBuilder

Model, türetilmiş bağlamdaki özelliklerde DbSet<TEntity> bulunan varlık sınıfları üzerinde bir dizi kural çalıştırılarak bulunur. Kural tarafından bulunan modeli daha fazla yapılandırmak için yöntemini geçersiz kılabilirsiniz OnModelCreating(ModelBuilder) .

Daha fazla bilgi ve örnek için bkz. DbContext yaşam süresi, yapılandırma ve başlatma, EF Core ile verileri sorgulama, İzlemeyi değiştirme ve EF Core ile veri kaydetme .

Oluşturucular

Veri Akışı Adı Description
DbContext()

DbContext sınıfının yeni bir örneğini başlatır. Bu OnConfiguring(DbContextOptionsBuilder) bağlam için kullanılacak veritabanını (ve diğer seçenekleri) yapılandırmak için yöntemi çağrılır.

DbContext(DbContextOptions)

Belirtilen seçenekleri kullanarak sınıfın DbContext yeni bir örneğini başlatır. Yöntemi OnConfiguring(DbContextOptionsBuilder) , seçeneklerin daha fazla yapılandırılmasına izin vermek için çağrılmaya devam eder.

Özellikler

Veri Akışı Adı Description
ChangeTracker

Bu bağlamı izleyen varlık örnekleri için bilgilere ve işlemlere erişim sağlar.

ContextId

Bağlam örneği ve varsa havuz kirası için benzersiz bir tanımlayıcı.

Database

Bu bağlam için veritabanıyla ilgili bilgilere ve işlemlere erişim sağlar.

Model

Varlıkların şekli, aralarındaki ilişkiler ve bunların veritabanına nasıl eşlenmesiyle ilgili meta veriler. Veritabanını başlatmak için gereken tüm bilgileri içermeyebilir.

Yöntemler

Veri Akışı Adı Description
Add(Object)

Çağrıldığında SaveChanges() veritabanına eklenecek durumda verilen varlığı ve henüz izlenmeyen Added diğer erişilebilir varlıkları izlemeye başlar.

Add<TEntity>(TEntity)

Çağrıldığında SaveChanges() veritabanına eklenecek durumda verilen varlığı ve henüz izlenmeyen Added diğer erişilebilir varlıkları izlemeye başlar.

AddAsync(Object, CancellationToken)

Çağrıldığında SaveChanges() veritabanına eklenecek durumda verilen varlığı ve henüz izlenmeyen Added diğer erişilebilir varlıkları izlemeye başlar.

AddAsync<TEntity>(TEntity, CancellationToken)

Çağrıldığında SaveChanges() veritabanına eklenecek durumda verilen varlığı ve henüz izlenmeyen Added diğer erişilebilir varlıkları izlemeye başlar.

AddRange(IEnumerable<Object>)

Çağrıldığında SaveChanges() veritabanına eklenecek şekilde, belirli varlıkları ve henüz izlenmeyen Added diğer erişilebilir varlıkları izlemeye başlar.

AddRange(Object[])

Çağrıldığında SaveChanges() veritabanına eklenecek şekilde, belirli varlıkları ve henüz izlenmeyen Added diğer erişilebilir varlıkları izlemeye başlar.

AddRangeAsync(IEnumerable<Object>, CancellationToken)

Çağrıldığında SaveChanges() veritabanına eklenecek durumda verilen varlığı ve henüz izlenmeyen Added diğer erişilebilir varlıkları izlemeye başlar.

AddRangeAsync(Object[])

Çağrıldığında SaveChanges() veritabanına eklenecek durumda verilen varlığı ve henüz izlenmeyen Added diğer erişilebilir varlıkları izlemeye başlar.

Attach(Object)

Varsayılan olarak durumu kullanarak Unchanged verilen varlığı ve belirtilen varlıktan erişilebilen girişleri izlemeye başlar, ancak farklı bir durumun kullanılacağı durumlar için aşağıya bakın.

Attach<TEntity>(TEntity)

Varsayılan olarak durumu kullanarak Unchanged verilen varlığı ve belirtilen varlıktan erişilebilen girişleri izlemeye başlar, ancak farklı bir durumun kullanılacağı durumlar için aşağıya bakın.

AttachRange(IEnumerable<Object>)

Varsayılan olarak durumu kullanarak Unchanged belirli varlıklardan ulaşılabilen belirli varlıkları ve girişleri izlemeye başlar, ancak farklı bir durumun kullanılacağı durumlar için aşağıya bakın.

AttachRange(Object[])

Varsayılan olarak durumu kullanarak Unchanged belirli varlıklardan ulaşılabilen belirli varlıkları ve girişleri izlemeye başlar, ancak farklı bir durumun kullanılacağı durumlar için aşağıya bakın.

ConfigureConventions(ModelConfigurationBuilder)

Varsayılanları ayarlamak ve kuralları çalıştırmadan önce yapılandırmak için bu yöntemi geçersiz kılın. Bu yöntem öncesinde OnModelCreating(ModelBuilder)çağrılır.

Dispose()

Bu bağlam için ayrılan kaynakları serbest bırakır.

DisposeAsync()

Bu bağlam için ayrılan kaynakları serbest bırakır.

Entry(Object)

Verilen varlık için bir EntityEntry alır. Girdi, varlık için değişiklik izleme bilgilerine ve işlemlerine erişim sağlar.

Entry<TEntity>(TEntity)

Verilen varlık için bir EntityEntry<TEntity> alır. Girdi, varlık için değişiklik izleme bilgilerine ve işlemlerine erişim sağlar.

Find(Type, Object[])

Verilen birincil anahtar değerlerine sahip bir varlık bulur. Verilen birincil anahtar değerlerine sahip bir varlık bağlam tarafından izleniyorsa, veritabanına istekte bulunmaksızın hemen döndürülür. Aksi takdirde, veritabanında verilen birincil anahtar değerlerine sahip bir varlık için bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunmazsa null döndürülür.

Find<TEntity>(Object[])

Verilen birincil anahtar değerlerine sahip bir varlık bulur. Verilen birincil anahtar değerlerine sahip bir varlık bağlam tarafından izleniyorsa, veritabanına istekte bulunmaksızın hemen döndürülür. Aksi takdirde, veritabanında verilen birincil anahtar değerlerine sahip bir varlık için bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunmazsa null döndürülür.

FindAsync(Type, Object[], CancellationToken)

Verilen birincil anahtar değerlerine sahip bir varlık bulur. Verilen birincil anahtar değerlerine sahip bir varlık bağlam tarafından izleniyorsa, veritabanına istekte bulunmaksızın hemen döndürülür. Aksi takdirde, veritabanında verilen birincil anahtar değerlerine sahip bir varlık için bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunmazsa null döndürülür.

FindAsync(Type, Object[])

Verilen birincil anahtar değerlerine sahip bir varlık bulur. Verilen birincil anahtar değerlerine sahip bir varlık bağlam tarafından izleniyorsa, veritabanına istekte bulunmaksızın hemen döndürülür. Aksi takdirde, veritabanında verilen birincil anahtar değerlerine sahip bir varlık için bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunmazsa null döndürülür.

FindAsync<TEntity>(Object[], CancellationToken)

Verilen birincil anahtar değerlerine sahip bir varlık bulur. Verilen birincil anahtar değerlerine sahip bir varlık bağlam tarafından izleniyorsa, veritabanına istekte bulunmaksızın hemen döndürülür. Aksi takdirde, veritabanında verilen birincil anahtar değerlerine sahip bir varlık için bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunmazsa null döndürülür.

FindAsync<TEntity>(Object[])

Verilen birincil anahtar değerlerine sahip bir varlık bulur. Verilen birincil anahtar değerlerine sahip bir varlık bağlam tarafından izleniyorsa, veritabanına istekte bulunmaksızın hemen döndürülür. Aksi takdirde, veritabanında verilen birincil anahtar değerlerine sahip bir varlık için bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunmazsa null döndürülür.

FromExpression<TResult>(Expression<Func<IQueryable<TResult>>>)

Belirli bir sorgu ifadesi için sorgulanabilir bir oluşturur.

OnConfiguring(DbContextOptionsBuilder)

Bu bağlam için kullanılacak veritabanını (ve diğer seçenekleri) yapılandırmak için bu yöntemi geçersiz kılın. Bu yöntem, oluşturulan bağlamın her örneği için çağrılır. Temel uygulama hiçbir şey yapmaz.

OnModelCreating(ModelBuilder)

Türetilmiş bağlamınızdaki özelliklerde DbSet<TEntity> kullanıma sunulan varlık türlerinden kural tarafından bulunan modeli daha fazla yapılandırmak için bu yöntemi geçersiz kılın. Elde edilen model önbelleğe alınabilir ve türetilmiş bağlamınızın sonraki örnekleri için yeniden kullanılabilir.

Query<TQuery>()
Geçersiz.

örneklerini TQuerysorgulamak için kullanılabilecek bir DbSet<TEntity> oluşturur.

Remove(Object)

Durumunda verilen varlığı Deleted , çağrıldığında SaveChanges() veritabanından kaldırılacak şekilde izlemeye başlar.

Remove<TEntity>(TEntity)

Durumunda verilen varlığı Deleted , çağrıldığında SaveChanges() veritabanından kaldırılacak şekilde izlemeye başlar.

RemoveRange(IEnumerable<Object>)

Durumunda verilen varlığı Deleted , çağrıldığında SaveChanges() veritabanından kaldırılacak şekilde izlemeye başlar.

RemoveRange(Object[])

Durumunda verilen varlığı Deleted , çağrıldığında SaveChanges() veritabanından kaldırılacak şekilde izlemeye başlar.

SaveChanges()

Bu bağlamda yapılan tüm değişiklikleri veritabanına kaydeder.

SaveChanges(Boolean)

Bu bağlamda yapılan tüm değişiklikleri veritabanına kaydeder.

SaveChangesAsync(Boolean, CancellationToken)

Bu bağlamda yapılan tüm değişiklikleri veritabanına kaydeder.

SaveChangesAsync(CancellationToken)

Bu bağlamda yapılan tüm değişiklikleri veritabanına kaydeder.

Set<TEntity>()

örneklerini TEntitysorgulamak ve kaydetmek için kullanılabilecek bir DbSet<TEntity> oluşturur.

Set<TEntity>(String)

örneklerini TEntitysorgulamak ve kaydetmek için kullanılabilecek paylaşılan türde bir varlık türü için bir DbSet<TEntity> oluşturur.

Update(Object)

Varsayılan olarak durumu kullanarak Modified verilen varlığı ve belirtilen varlıktan erişilebilen girişleri izlemeye başlar, ancak farklı bir durumun kullanılacağı durumlar için aşağıya bakın.

Update<TEntity>(TEntity)

Varsayılan olarak durumu kullanarak Modified verilen varlığı ve belirtilen varlıktan erişilebilen girişleri izlemeye başlar, ancak farklı bir durumun kullanılacağı durumlar için aşağıya bakın.

UpdateRange(IEnumerable<Object>)

Varsayılan olarak durumu kullanarak Modified belirli varlıklardan ulaşılabilen belirli varlıkları ve girişleri izlemeye başlar, ancak farklı bir durumun kullanılacağı durumlar için aşağıya bakın.

UpdateRange(Object[])

Varsayılan olarak durumu kullanarak Modified belirli varlıklardan ulaşılabilen belirli varlıkları ve girişleri izlemeye başlar, ancak farklı bir durumun kullanılacağı durumlar için aşağıya bakın.

Ekinlikler

Veri Akışı Adı Description
SaveChangesFailed

Çağrısı özel durumla başarısız olursa SaveChanges bir SaveChangesAsync olay tetiklenir.

SavedChanges

veya çağrısının SaveChanges sonunda tetiklenen bir olay SaveChangesAsync

SavingChanges

veya çağrısının SaveChanges başında tetiklenen bir olay SaveChangesAsync

Belirtik Arabirim Kullanımları

Veri Akışı Adı Description
IDbContextDependencies.ChangeDetector

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextDependencies.EntityFinderFactory

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextDependencies.EntityFinderSource

Bu API, Entity Framework Core altyapısını destekler ve doğrudan kodunuzdan kullanılması amaçlanmamıştır. Bu API gelecek sürümlerde değiştirilebilir veya kaldırılabilir.

IDbContextDependencies.EntityGraphAttacher

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextDependencies.ExceptionDetector

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextDependencies.InfrastructureLogger

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextDependencies.ManyToManyLoaderFactory

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextDependencies.QueryProvider

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextDependencies.QuerySource

Bu API, Entity Framework Core altyapısını destekler ve doğrudan kodunuzdan kullanılması amaçlanmamıştır. Bu API gelecek sürümlerde değiştirilebilir veya kaldırılabilir.

IDbContextDependencies.SetSource

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextDependencies.StateManager

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextDependencies.UpdateLogger

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextPoolable.ClearLease()

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextPoolable.ResetState()

DbContext örneği, veritabanıyla bir oturumu temsil eder ve varlıklarınızın örneklerini sorgulamak ve kaydetmek için kullanılabilir. DbContext, İş Birimi ve Depo desenlerinin bir bileşimidir.

IDbContextPoolable.Resurrect(DbContextPoolConfigurationSnapshot)

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextPoolable.SetLease(DbContextLease)

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextPoolable.SetLeaseAsync(DbContextLease, CancellationToken)

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextPoolable.SetPool(IDbContextPool)

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbContextPoolable.SnapshotConfiguration()

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbQueryCache.GetOrAddQuery(IDbQuerySource, Type)

Bu API, Entity Framework Core altyapısını destekler ve doğrudan kodunuzdan kullanılması amaçlanmamıştır. Bu API gelecek sürümlerde değiştirilebilir veya kaldırılabilir.

IDbSetCache.GetOrAddSet(IDbSetSource, String, Type)

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbSetCache.GetOrAddSet(IDbSetSource, Type)

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IDbSetCache.GetSets()

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IInfrastructure<IServiceProvider>.Instance

Hizmetleri çözümlemek IServiceProvider için kullanılan kapsamı alır.

Bu özellik, genel API yüzeyinde doğrudan kullanıma sunulmayan hizmetlerden yararlanması gereken uzantı yöntemleri tarafından kullanılmak üzere tasarlanmıştır.

IResettableService.ResetState()

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

IResettableService.ResetStateAsync(CancellationToken)

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

Uzantı Metotları

Veri Akışı Adı Description
CreateProxy(DbContext, Type, Object[])

Ara sunucu oluşturma açıksa varlık türü için bir proxy örneği oluşturur.

CreateProxy<TEntity>(DbContext, Action<TEntity>, Object[])

Ara sunucu oluşturma açıksa varlık türü için bir proxy örneği oluşturur.

CreateProxy<TEntity>(DbContext, Object[])

Ara sunucu oluşturma açıksa varlık türü için bir proxy örneği oluşturur.

GetInfrastructure<T>(IInfrastructure<T>)

kullanılarak IInfrastructure<T>gizlenen bir özellikten değerini alır.

Bu yöntem genellikle veritabanı sağlayıcıları (ve diğer uzantılar) tarafından kullanılır. Genellikle uygulama kodunda kullanılmaz.

Şunlara uygulanır