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 birleşimidir.

public class DbContext : IDisposable, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<IServiceProvider>
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>
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 IDbContextDependencies, IDbContextPoolable, IDbSetCache, IDisposable, IInfrastructure(Of IServiceProvider)
Public Class DbContext
Implements IDbContextDependencies, IDbContextPoolable, IDbQueryCache, IDbSetCache, IDisposable, IInfrastructure(Of IServiceProvider)
Public Class DbContext
Implements IAsyncDisposable, IDbContextDependencies, IDbContextPoolable, IDbSetCache, IDisposable, IInfrastructure(Of IServiceProvider)
Devralma
DbContext
Uygulamalar
IInfrastructure<IServiceProvider> IDisposable Microsoft.EntityFrameworkCore.Internal.IDbContextDependencies Microsoft.EntityFrameworkCore.Internal.IDbContextPoolable Microsoft.EntityFrameworkCore.Internal.IDbSetCache Microsoft.EntityFrameworkCore.Internal.IDbQueryCache IResettableService IAsyncDisposable

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. Özelliklerin DbSet<TEntity> ortak bir ayarlayıcısı varsa, türetilen bağlam örneği oluşturulduğunda bunlar 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 harici yapılandırma gerçekleştirmek isterseniz, (veya ) kullanarak DbContextOptionsBuilder<TContext> bir örneğini DbContextOptions<TContext> (veya DbContextOptionsDbContextOptionsBuilder) harici olarak oluşturabilir ve bunu temel oluşturucusunda DbContextgeçirebilirsiniz.

Model, türetilen bağlamdaki özelliklerde DbSet<TEntity> bulunan varlık sınıfları üzerinde bir kural kümesi ç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 VERILERI EF Core ile kaydetme .

Oluşturucular

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. Seçeneklerin OnConfiguring(DbContextOptionsBuilder) daha fazla yapılandırılmasına izin vermek için yöntemi çağrılmaya devam eder.

Özellikler

ChangeTracker

Bu bağlam tarafından izleniyor varlık örneklerine yönelik 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

Add(Object)

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

Add<TEntity>(TEntity)

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

AddAsync(Object, CancellationToken)

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

AddAsync<TEntity>(TEntity, CancellationToken)

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

AddRange(IEnumerable<Object>)

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

AddRange(Object[])

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

AddRangeAsync(IEnumerable<Object>, CancellationToken)

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

AddRangeAsync(Object[])

Verilen varlığı ve henüz izlenmeyen diğer erişilebilir varlıkları, Added çağrıldığında SaveChanges() veritabanına eklenecek şekilde 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 verilen varlıklardan erişilebilen 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 verilen varlıklardan erişilebilen 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ışmadan ö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. girdisi, 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. girdisi, 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, verilen birincil anahtar değerlerine sahip bir varlık için veritabanına bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunamazsa 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, verilen birincil anahtar değerlerine sahip bir varlık için veritabanına bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunamazsa 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, verilen birincil anahtar değerlerine sahip bir varlık için veritabanına bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunamazsa 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, verilen birincil anahtar değerlerine sahip bir varlık için veritabanına bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunamazsa 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, verilen birincil anahtar değerlerine sahip bir varlık için veritabanına bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunamazsa 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, verilen birincil anahtar değerlerine sahip bir varlık için veritabanına bir sorgu yapılır ve bu varlık bulunursa bağlama eklenir ve döndürülür. Varlık bulunamazsa null döndürülür.

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

Verilen 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)

Çağrıldığında SaveChanges() veritabanından kaldırılacak şekilde belirtilen varlığı Deleted durumunda izlemeye başlar.

Remove<TEntity>(TEntity)

Çağrıldığında SaveChanges() veritabanından kaldırılacak şekilde belirtilen varlığı Deleted durumunda izlemeye başlar.

RemoveRange(IEnumerable<Object>)

Çağrıldığında SaveChanges() veritabanından kaldırılacak şekilde belirtilen varlığı Deleted durumunda izlemeye başlar.

RemoveRange(Object[])

Çağrıldığında SaveChanges() veritabanından kaldırılacak şekilde belirtilen varlığı Deleted durumunda 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)

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

Update(Object)

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

Update<TEntity>(TEntity)

Belirtilen varlığı ve belirtilen varlıktan erişilebilen girişleri varsayılan olarak durumunu kullanarak Modified 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 erişilebilen 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 erişilebilen belirli varlıkları ve girişleri izlemeye başlar, ancak farklı bir durumun kullanılacağı durumlar için aşağıya bakın.

Ekinlikler

SaveChangesFailed

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

SavedChanges

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

SavingChanges

veya çağrısının SaveChanges başlangıcında bir olay tetiklenir SaveChangesAsync

Belirtik Arabirim Kullanımları

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.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 birleş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ştirirken 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ştirirken 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ştirirken 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ştirirken 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ştirirken 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ştirirken 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ştirirken 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ştirirken 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ı

GetInfrastructure<T>(IInfrastructure<T>)

kullanılarak IInfrastructure<T>gizlenen bir özellikten değeri 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.

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.

Şunlara uygulanır