Freigeben über


DbContext Klasse

Definition

Ein DbContext-instance stellt eine Sitzung mit der Datenbank dar und kann verwendet werden, um Instanzen Ihrer Entitäten abzufragen und zu speichern. DbContext ist eine Kombination aus den Mustern "Unit Of Work" und "Repository".

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)
Vererbung
DbContext
Implementiert
IInfrastructure<IServiceProvider> IDisposable Microsoft.EntityFrameworkCore.Internal.IDbContextDependencies Microsoft.EntityFrameworkCore.Internal.IDbContextPoolable Microsoft.EntityFrameworkCore.Internal.IDbSetCache Microsoft.EntityFrameworkCore.Internal.IDbQueryCache IResettableService IAsyncDisposable

Hinweise

Entity Framework Core unterstützt nicht mehrere parallele Vorgänge, die auf demselben DbContext-instance ausgeführt werden. Dies schließt die parallele Ausführung von asynchronen Abfragen und jede explizite gleichzeitige Verwendung aus mehreren Threads ein. Warten Sie daher immer sofort auf asynchrone Aufrufe, oder verwenden Sie separate DbContext-Instanzen für parallel ausgeführte Vorgänge. Weitere Informationen und Beispiele finden Sie unter Vermeiden von Problemen beim DbContext-Threading .

In der Regel erstellen Sie eine Klasse, die von DbContext abgeleitet ist und Eigenschaften für jede Entität im Modell enthält DbSet<TEntity> . Wenn die DbSet<TEntity> Eigenschaften über einen öffentlichen Setter verfügen, werden sie automatisch initialisiert, wenn die instance des abgeleiteten Kontexts erstellt wird.

Überschreiben Sie die OnConfiguring(DbContextOptionsBuilder) Methode zum Konfigurieren der Datenbank (und anderer Optionen), die für den Kontext verwendet werden soll. Wenn Sie die Konfiguration auch lieber extern statt inline in Ihrem Kontext ausführen möchten, können Sie (oder ) verwenden DbContextOptionsBuilder<TContext> , um eine instance von DbContextOptions<TContext> (oder DbContextOptions) extern zu erstellen und sie an einen Basiskonstruktor von DbContextzu DbContextOptionsBuilderübergeben.

Das Modell wird ermittelt, indem eine Reihe von Konventionen für die Entitätsklassen ausgeführt wird, die in den DbSet<TEntity> Eigenschaften des abgeleiteten Kontexts gefunden werden. Um das durch die Konvention ermittelte Modell weiter zu konfigurieren, können Sie die OnModelCreating(ModelBuilder) -Methode überschreiben.

Weitere Informationen und Beispiele finden Sie unter Lebensdauer, Konfiguration und Initialisierung von DbContext, Abfragen von Daten mit EF Core, Ändern der Nachverfolgung und Speichern von Daten mit EF Core .

Konstruktoren

DbContext()

Initialisiert eine neue Instanz der DbContext-Klasse. Die OnConfiguring(DbContextOptionsBuilder) -Methode wird aufgerufen, um die Datenbank (und andere Optionen) zu konfigurieren, die für diesen Kontext verwendet werden sollen.

DbContext(DbContextOptions)

Initialisiert einen neuen instance der DbContext -Klasse mithilfe der angegebenen Optionen. Die OnConfiguring(DbContextOptionsBuilder) Methode wird weiterhin aufgerufen, um eine weitere Konfiguration der Optionen zu ermöglichen.

Eigenschaften

ChangeTracker

Bietet Zugriff auf Informationen und Vorgänge für Entitätsinstanzen, die dieser Kontext nachverfolgt.

ContextId

Ein eindeutiger Bezeichner für den Kontext instance- und Poolleasing, falls vorhanden.

Database

Bietet Zugriff auf datenbankbezogene Informationen und Vorgänge für diesen Kontext.

Model

Die Metadaten über die Form von Entitäten, die Beziehungen zwischen ihnen und ihre Zuordnung zur Datenbank. Möglicherweise nicht alle Informationen enthalten, die zum Initialisieren der Datenbank erforderlich sind.

Methoden

Add(Object)

Beginnt mit der Nachverfolgung der angegebenen Entität und aller anderen erreichbaren Entitäten, die noch nicht nachverfolgt werden, in dem Added Zustand, dass sie beim SaveChanges() Aufruf in die Datenbank eingefügt werden.

Add<TEntity>(TEntity)

Beginnt mit der Nachverfolgung der angegebenen Entität und aller anderen erreichbaren Entitäten, die noch nicht nachverfolgt werden, in dem Added Zustand, dass sie beim SaveChanges() Aufruf in die Datenbank eingefügt werden.

AddAsync(Object, CancellationToken)

Beginnt mit der Nachverfolgung der angegebenen Entität und aller anderen erreichbaren Entitäten, die noch nicht nachverfolgt werden, in dem Added Zustand, dass sie beim SaveChanges() Aufruf in die Datenbank eingefügt werden.

AddAsync<TEntity>(TEntity, CancellationToken)

Beginnt mit der Nachverfolgung der angegebenen Entität und aller anderen erreichbaren Entitäten, die noch nicht nachverfolgt werden, in dem Added Zustand, dass sie beim SaveChanges() Aufruf in die Datenbank eingefügt werden.

AddRange(IEnumerable<Object>)

Beginnt mit der Nachverfolgung der angegebenen Entitäten und aller anderen erreichbaren Entitäten, die noch nicht nachverfolgt werden, in dem Added Zustand, dass sie beim SaveChanges() Aufruf in die Datenbank eingefügt werden.

AddRange(Object[])

Beginnt mit der Nachverfolgung der angegebenen Entitäten und aller anderen erreichbaren Entitäten, die noch nicht nachverfolgt werden, in dem Added Zustand, dass sie beim SaveChanges() Aufruf in die Datenbank eingefügt werden.

AddRangeAsync(IEnumerable<Object>, CancellationToken)

Beginnt mit der Nachverfolgung der angegebenen Entität und aller anderen erreichbaren Entitäten, die noch nicht nachverfolgt werden, in dem Added Zustand, dass sie beim SaveChanges() Aufruf in die Datenbank eingefügt werden.

AddRangeAsync(Object[])

Beginnt mit der Nachverfolgung der angegebenen Entität und aller anderen erreichbaren Entitäten, die noch nicht nachverfolgt werden, in dem Added Zustand, dass sie beim SaveChanges() Aufruf in die Datenbank eingefügt werden.

Attach(Object)

Beginnt mit der Nachverfolgung der angegebenen Entität und einträge, die von der angegebenen Entität aus erreichbar sind, wobei der Unchanged Status standardmäßig verwendet wird. Siehe unten, wenn ein anderer Zustand verwendet wird.

Attach<TEntity>(TEntity)

Beginnt mit der Nachverfolgung der angegebenen Entität und einträge, die von der angegebenen Entität aus erreichbar sind, wobei der Unchanged Status standardmäßig verwendet wird. Siehe unten, wenn ein anderer Zustand verwendet wird.

AttachRange(IEnumerable<Object>)

Beginnt mit der Nachverfolgung der angegebenen Entitäten und Einträge, die von den angegebenen Entitäten aus erreichbar sind, standardmäßig den Unchanged Zustand zu verwenden. Siehe unten jedoch Fälle, in denen ein anderer Zustand verwendet wird.

AttachRange(Object[])

Beginnt mit der Nachverfolgung der angegebenen Entitäten und Einträge, die von den angegebenen Entitäten aus erreichbar sind, standardmäßig den Unchanged Zustand zu verwenden. Siehe unten jedoch Fälle, in denen ein anderer Zustand verwendet wird.

ConfigureConventions(ModelConfigurationBuilder)

Überschreiben Sie diese Methode, um Standardwerte festzulegen und Konventionen zu konfigurieren, bevor sie ausgeführt werden. Diese Methode wird vor OnModelCreating(ModelBuilder)aufgerufen.

Dispose()

Gibt die zugeordneten Ressourcen für diesen Kontext frei.

DisposeAsync()

Gibt die zugeordneten Ressourcen für diesen Kontext frei.

Entry(Object)

Ruft eine EntityEntry für die angegebene Entität ab. Der Eintrag bietet Zugriff auf Änderungsnachverfolgungsinformationen und -vorgänge für die Entität.

Entry<TEntity>(TEntity)

Ruft eine EntityEntry<TEntity> für die angegebene Entität ab. Der Eintrag bietet Zugriff auf Änderungsnachverfolgungsinformationen und -vorgänge für die Entität.

Find(Type, Object[])

Sucht eine Entität mit den angegebenen Primärschlüsselwerten. Wenn eine Entität mit den angegebenen Primärschlüsselwerten vom Kontext nachverfolgt wird, wird sie sofort zurückgegeben, ohne eine Anforderung an die Datenbank zu stellen. Andernfalls wird eine Abfrage an die Datenbank für eine Entität mit den angegebenen Primärschlüsselwerten durchgeführt, und diese Entität wird, wenn sie gefunden wird, an den Kontext angefügt und zurückgegeben. Wenn keine Entität gefunden wird, wird NULL zurückgegeben.

Find<TEntity>(Object[])

Sucht eine Entität mit den angegebenen Primärschlüsselwerten. Wenn eine Entität mit den angegebenen Primärschlüsselwerten vom Kontext nachverfolgt wird, wird sie sofort zurückgegeben, ohne eine Anforderung an die Datenbank zu stellen. Andernfalls wird eine Abfrage an die Datenbank für eine Entität mit den angegebenen Primärschlüsselwerten durchgeführt, und diese Entität wird, wenn sie gefunden wird, an den Kontext angefügt und zurückgegeben. Wenn keine Entität gefunden wird, wird NULL zurückgegeben.

FindAsync(Type, Object[], CancellationToken)

Sucht eine Entität mit den angegebenen Primärschlüsselwerten. Wenn eine Entität mit den angegebenen Primärschlüsselwerten vom Kontext nachverfolgt wird, wird sie sofort zurückgegeben, ohne eine Anforderung an die Datenbank zu stellen. Andernfalls wird eine Abfrage an die Datenbank für eine Entität mit den angegebenen Primärschlüsselwerten durchgeführt, und diese Entität wird, wenn sie gefunden wird, an den Kontext angefügt und zurückgegeben. Wenn keine Entität gefunden wird, wird NULL zurückgegeben.

FindAsync(Type, Object[])

Sucht eine Entität mit den angegebenen Primärschlüsselwerten. Wenn eine Entität mit den angegebenen Primärschlüsselwerten vom Kontext nachverfolgt wird, wird sie sofort zurückgegeben, ohne eine Anforderung an die Datenbank zu stellen. Andernfalls wird eine Abfrage an die Datenbank für eine Entität mit den angegebenen Primärschlüsselwerten durchgeführt, und diese Entität wird, wenn sie gefunden wird, an den Kontext angefügt und zurückgegeben. Wenn keine Entität gefunden wird, wird NULL zurückgegeben.

FindAsync<TEntity>(Object[], CancellationToken)

Sucht eine Entität mit den angegebenen Primärschlüsselwerten. Wenn eine Entität mit den angegebenen Primärschlüsselwerten vom Kontext nachverfolgt wird, wird sie sofort zurückgegeben, ohne eine Anforderung an die Datenbank zu stellen. Andernfalls wird eine Abfrage an die Datenbank für eine Entität mit den angegebenen Primärschlüsselwerten durchgeführt, und diese Entität wird, wenn sie gefunden wird, an den Kontext angefügt und zurückgegeben. Wenn keine Entität gefunden wird, wird NULL zurückgegeben.

FindAsync<TEntity>(Object[])

Sucht eine Entität mit den angegebenen Primärschlüsselwerten. Wenn eine Entität mit den angegebenen Primärschlüsselwerten vom Kontext nachverfolgt wird, wird sie sofort zurückgegeben, ohne eine Anforderung an die Datenbank zu stellen. Andernfalls wird eine Abfrage an die Datenbank für eine Entität mit den angegebenen Primärschlüsselwerten durchgeführt, und diese Entität wird, wenn sie gefunden wird, an den Kontext angefügt und zurückgegeben. Wenn keine Entität gefunden wird, wird NULL zurückgegeben.

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

Erstellt eine Abfrage für einen bestimmten Abfrageausdruck.

OnConfiguring(DbContextOptionsBuilder)

Überschreiben Sie diese Methode, um die Datenbank (und andere Optionen) zu konfigurieren, die für diesen Kontext verwendet werden sollen. Diese Methode wird für jede instance des erstellten Kontexts aufgerufen. Die Basisimplementierung tut nichts.

OnModelCreating(ModelBuilder)

Überschreiben Sie diese Methode, um das Modell weiter zu konfigurieren, das durch die Konvention aus den Entitätstypen ermittelt wurde, die in Eigenschaften ihres DbSet<TEntity> abgeleiteten Kontexts verfügbar gemacht wurden. Das resultierende Modell kann zwischengespeichert und für nachfolgende Instanzen Ihres abgeleiteten Kontexts erneut verwendet werden.

Query<TQuery>()
Veraltet.

Erstellt eine DbSet<TEntity> , die zum Abfragen von Instanzen von TQueryverwendet werden kann.

Remove(Object)

Beginnt mit der Nachverfolgung der angegebenen Entität im Deleted Zustand, sodass sie beim SaveChanges() Aufruf aus der Datenbank entfernt wird.

Remove<TEntity>(TEntity)

Beginnt mit der Nachverfolgung der angegebenen Entität im Deleted Zustand, sodass sie beim SaveChanges() Aufruf aus der Datenbank entfernt wird.

RemoveRange(IEnumerable<Object>)

Beginnt mit der Nachverfolgung der angegebenen Entität im Deleted Zustand, sodass sie beim SaveChanges() Aufruf aus der Datenbank entfernt wird.

RemoveRange(Object[])

Beginnt mit der Nachverfolgung der angegebenen Entität im Deleted Zustand, sodass sie beim SaveChanges() Aufruf aus der Datenbank entfernt wird.

SaveChanges()

Speichert alle in diesem Kontext vorgenommenen Änderungen in der Datenbank.

SaveChanges(Boolean)

Speichert alle in diesem Kontext vorgenommenen Änderungen in der Datenbank.

SaveChangesAsync(Boolean, CancellationToken)

Speichert alle in diesem Kontext vorgenommenen Änderungen in der Datenbank.

SaveChangesAsync(CancellationToken)

Speichert alle in diesem Kontext vorgenommenen Änderungen in der Datenbank.

Set<TEntity>()

Erstellt eine DbSet<TEntity> , die zum Abfragen und Speichern von Instanzen von TEntityverwendet werden kann.

Set<TEntity>(String)

Erstellt einen DbSet<TEntity> für einen Entitätstyp vom freigegebenen Typ, der zum Abfragen und Speichern von Instanzen von TEntityverwendet werden kann.

Update(Object)

Beginnt mit der Nachverfolgung der angegebenen Entität und einträge, die von der angegebenen Entität aus erreichbar sind, wobei der Modified Status standardmäßig verwendet wird. Siehe unten, wenn ein anderer Zustand verwendet wird.

Update<TEntity>(TEntity)

Beginnt mit der Nachverfolgung der angegebenen Entität und einträge, die von der angegebenen Entität aus erreichbar sind, wobei der Modified Status standardmäßig verwendet wird. Siehe unten, wenn ein anderer Zustand verwendet wird.

UpdateRange(IEnumerable<Object>)

Beginnt mit der Nachverfolgung der angegebenen Entitäten und Einträge, die von den angegebenen Entitäten aus erreichbar sind, standardmäßig den Modified Zustand zu verwenden. Siehe unten jedoch Fälle, in denen ein anderer Zustand verwendet wird.

UpdateRange(Object[])

Beginnt mit der Nachverfolgung der angegebenen Entitäten und Einträge, die von den angegebenen Entitäten aus erreichbar sind, standardmäßig den Modified Zustand zu verwenden. Siehe unten jedoch Fälle, in denen ein anderer Zustand verwendet wird.

Ereignisse

SaveChangesFailed

Ein Ereignis wird ausgelöst, wenn ein Aufruf von SaveChanges oder SaveChangesAsync mit einer Ausnahme fehlschlägt.

SavedChanges

Ein Ereignis, das am Ende eines Aufrufs SaveChanges von oder ausgelöst wurde SaveChangesAsync

SavingChanges

Ein Ereignis, das am Anfang eines Aufrufs SaveChanges von oder ausgelöst wurde SaveChangesAsync

Explizite Schnittstellenimplementierungen

IDbContextDependencies.ChangeDetector

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextDependencies.EntityFinderFactory

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextDependencies.EntityFinderSource

Diese API unterstützt die Entity Framework Core-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. Diese API kann sich ändern oder in zukünftigen Releases entfernt werden.

IDbContextDependencies.EntityGraphAttacher

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextDependencies.ExceptionDetector

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextDependencies.InfrastructureLogger

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextDependencies.QueryProvider

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextDependencies.QuerySource

Diese API unterstützt die Entity Framework Core-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. Diese API kann sich ändern oder in zukünftigen Releases entfernt werden.

IDbContextDependencies.SetSource

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextDependencies.StateManager

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextDependencies.UpdateLogger

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextPoolable.ClearLease()

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextPoolable.ResetState()

Ein DbContext-instance stellt eine Sitzung mit der Datenbank dar und kann verwendet werden, um Instanzen Ihrer Entitäten abzufragen und zu speichern. DbContext ist eine Kombination aus den Mustern "Unit Of Work" und "Repository".

IDbContextPoolable.Resurrect(DbContextPoolConfigurationSnapshot)

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextPoolable.SetLease(DbContextLease)

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextPoolable.SetLeaseAsync(DbContextLease, CancellationToken)

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextPoolable.SetPool(IDbContextPool)

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbContextPoolable.SnapshotConfiguration()

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbQueryCache.GetOrAddQuery(IDbQuerySource, Type)

Diese API unterstützt die Entity Framework Core-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen. Diese API kann sich ändern oder in zukünftigen Releases entfernt werden.

IDbSetCache.GetOrAddSet(IDbSetSource, String, Type)

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbSetCache.GetOrAddSet(IDbSetSource, Type)

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IDbSetCache.GetSets()

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IInfrastructure<IServiceProvider>.Instance

Ruft den Bereich ab IServiceProvider , der zum Auflösen von Diensten verwendet wird.

Diese Eigenschaft ist für die Verwendung durch Erweiterungsmethoden vorgesehen, die Dienste verwenden müssen, die nicht direkt auf der öffentlichen API-Oberfläche verfügbar gemacht werden.

IResettableService.ResetState()

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

IResettableService.ResetStateAsync(CancellationToken)

Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Es kann ohne Vorankündigung in einer Version geändert oder entfernt werden. Sie sollten es nur mit äußerster Vorsicht direkt im Code verwenden und wissen, dass dies beim Aktualisieren auf ein neues Entity Framework Core-Release zu Anwendungsfehlern führen kann.

Erweiterungsmethoden

GetInfrastructure<T>(IInfrastructure<T>)

Ruft den Wert aus einer Eigenschaft ab, die mit IInfrastructure<T>ausgeblendet wird.

Diese Methode wird in der Regel von Datenbankanbietern (und anderen Erweiterungen) verwendet. Es wird im Allgemeinen nicht im Anwendungscode verwendet.

CreateProxy(DbContext, Type, Object[])

Erstellt einen Proxy instance für einen Entitätstyp, wenn die Proxyerstellung aktiviert wurde.

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

Erstellt einen Proxy instance für einen Entitätstyp, wenn die Proxyerstellung aktiviert wurde.

CreateProxy<TEntity>(DbContext, Object[])

Erstellt einen Proxy instance für einen Entitätstyp, wenn die Proxyerstellung aktiviert wurde.

Gilt für: