System.Data.Entity.Infrastructure Namespace

Klassen

CommitFailedException

Wird ausgelöst, wenn ein Fehler auftritt, der einen committ.DbTransaction

CommitFailureHandler

Ein Transaktionshandler, der eine ordnungsgemäße Wiederherstellung nach Verbindungsfehlern während des Transaktionscommits ermöglicht, indem Transaktionsablaufverfolgungsinformationen in der Datenbank gespeichert werden. Sie muss mithilfe SetDefaultTransactionHandler(Func<TransactionHandler>)von registriert werden.

DbChangeTracker

Wird von der ChangeTracker-Methode von DbContext zurückgegeben, um Zugriff auf Features des Kontexts zu ermöglichen, die sich auf die Änderungsnachverfolgung von Entitäten beziehen.

DbCollectionEntry

Eine nicht generische Version der DbCollectionEntry<TEntity,TElement> -Klasse.

DbCollectionEntry<TEntity,TElement>

Instanzen dieser Klasse werden von der Collection-Methode von zurückgegeben und ermöglichen das Ausführen von DbEntityEntry<TEntity> Vorgängen wie dem Laden für die Sammlungsnavigationseigenschaften einer Entität.

DbCompiledModel

Eine unveränderliche Darstellung eines EDM-Modells (Entity Data Model), das zum Erstellen eines ObjectContext verwendet werden kann, oder an den Konstruktor eines DbContextübergeben werden kann. Für eine höhere Leistung sollten Instanzen dieses Typs zwischengespeichert und zum Erstellen von Kontexten wiederverwendet werden.

DbComplexPropertyEntry

Eine nicht generische Version der DbComplexPropertyEntry<TEntity,TComplexProperty> -Klasse.

DbComplexPropertyEntry<TEntity,TComplexProperty>

Instanzen dieser Klasse werden von der ComplexProperty-Methode von DbEntityEntry<TEntity> zurückgegeben und ermöglichen den Zugriff auf den Zustand einer komplexen Eigenschaft.

DbConnectionInfo

Stellt Informationen zu einer Datenbankverbindung dar.

DbContextConfiguration

Wird von der Configuration-Methode von DbContext zurückgegeben, um Zugriff auf Konfigurationsoptionen für den Kontext bereitzustellen.

DbContextInfo

Stellt Laufzeitinformationen zu einem bestimmten DbContext Typ bereit.

DbEntityEntry

Eine nicht generische Version der DbEntityEntry<TEntity> -Klasse.

DbEntityEntry<TEntity>

Instanzen dieser Klasse bieten Zugriff auf Informationen zu und die Steuerung von Entitäten, die DbContextvon nachverfolgt werden. Verwenden Sie die Entity-Methode oder die Entities-Methode des Kontexts, um Objekte dieses Typs abzurufen.

DbExecutionStrategy

Stellt die Basisimplementierung des Wiederholungsmechanismus für unzuverlässige Vorgänge und vorübergehende Bedingungen bereit, die exponentiell steigende Verzögerungen zwischen Wiederholungen verwenden.

DbMemberEntry

Dies ist eine abstrakte Basisklasse, mit der eine skalare oder komplexe Eigenschaft oder eine Navigationseigenschaft einer Entität dargestellt wird. Skalare und komplexe Eigenschaften verwenden die abgeleitete Klasse DbPropertyEntry, verweisen auf Navigationseigenschaften verwenden die abgeleitete Klasse DbReferenceEntryund die Sammlungsnavigationseigenschaften verwenden die abgeleitete Klasse DbCollectionEntry.

DbMemberEntry<TEntity,TProperty>

Dies ist eine abstrakte Basisklasse, mit der eine skalare oder komplexe Eigenschaft oder eine Navigationseigenschaft einer Entität dargestellt wird. Skalare und komplexe Eigenschaften verwenden die abgeleitete Klasse DbPropertyEntry<TEntity,TProperty>, verweisen auf Navigationseigenschaften verwenden die abgeleitete Klasse DbReferenceEntry<TEntity,TProperty>und die Sammlungsnavigationseigenschaften verwenden die abgeleitete Klasse DbCollectionEntry<TEntity,TElement>.

DbModel

Stellt ein Entity Data Model (EDM) dar, das DbModelBuildervon erstellt wird. Die Compile-Methode kann verwendet werden, um von dieser EDM-Darstellung zu einer DbCompiledModel zu wechseln, bei der es sich um eine kompilierte Momentaufnahme des Modells handelt, die zum Zwischenspeichern und Erstellen von DbContext - oder ObjectContext -Instanzen geeignet ist.

DbModelStore

Basisklasse für persistenten Modellcache.

DbPropertyEntry

Eine nicht generische Version der DbPropertyEntry<TEntity,TProperty> -Klasse.

DbPropertyEntry<TEntity,TProperty>

Instanzen dieser Klasse werden von der Property-Methode von DbEntityEntry<TEntity> zurückgegeben und ermöglichen den Zugriff auf den Zustand der skalaren oder komplexen Eigenschaft.

DbPropertyValues

Eine Auflistung aller Eigenschaften für eine zugrunde liegende Entität oder ein zugrunde liegendes komplexes Objekt.

DbProviderInfo

Gruppiert ein Zeichenfolgenpaar, das einen Anbieter und eine Serverversion identifiziert, in einem einzelnen Objekt.

DbQuery

Stellt eine nicht generische LINQ to Entities Abfrage für einen DbContext dar.

DbQuery<TResult>

Stellt eine LINQ to Entities Abfrage für einen DbContext dar.

DbRawSqlQuery

Stellt eine SQL-Abfrage für Nicht-Entitäten dar, die aus einem DbContext erstellt wird und mithilfe der Verbindung aus diesem Kontext ausgeführt wird. Instanzen dieser Klasse werden aus dem Database instance abgerufen. Die Abfrage wird nicht ausgeführt, wenn dieses Objekt erstellt wird. Sie wird jedes Mal ausgeführt, wenn es aufgelistet wird, z. B. mit foreach. SQL-Abfragen für Entitäten werden mit SqlQuery(String, Object[])erstellt. Eine generische Version dieser Klasse finden Sie DbRawSqlQuery<TElement> unter.

DbRawSqlQuery<TElement>

Stellt eine SQL-Abfrage für Nicht-Entitäten dar, die aus einem DbContext erstellt wird und mithilfe der Verbindung aus diesem Kontext ausgeführt wird. Instanzen dieser Klasse werden aus dem Database instance abgerufen. Die Abfrage wird nicht ausgeführt, wenn dieses Objekt erstellt wird. Sie wird jedes Mal ausgeführt, wenn sie aufgezählt wird, z. B. mithilfe foreachvon . SQL-Abfragen für Entitäten werden mit SqlQuery(String, Object[])erstellt. Eine nicht generische Version dieser Klasse finden Sie DbRawSqlQuery unter.

DbReferenceEntry

Eine nicht generische Version der DbReferenceEntry<TEntity,TProperty> -Klasse.

DbReferenceEntry<TEntity,TProperty>

Instanzen dieser Klasse werden von der Reference-Methode von DbEntityEntry<TEntity> zurückgegeben und ermöglichen das Ausführen von Vorgängen wie dem Laden für die Verweisnavigationseigenschaften einer Entität.

DbSqlQuery

Stellt eine SQL-Abfrage für Entitäten dar, die aus einem DbContext erstellt und mithilfe der Verbindung aus diesem Kontext ausgeführt wird. Instanzen dieser Klasse werden aus dem DbSet instance für den Entitätstyp abgerufen. Die Abfrage wird nicht ausgeführt, wenn dieses Objekt erstellt wird. Sie wird jedes Mal ausgeführt, wenn es aufgelistet wird, z. B. mit foreach. SQL-Abfragen für Nicht-Entitäten werden mit SqlQuery(Type, String, Object[])erstellt. Eine generische Version dieser Klasse finden Sie DbSqlQuery<TEntity> unter.

DbSqlQuery<TEntity>

Stellt eine SQL-Abfrage für Entitäten dar, die aus einem DbContext erstellt und mithilfe der Verbindung aus diesem Kontext ausgeführt wird. Instanzen dieser Klasse werden aus dem DbSet<TEntity> instance für den Entitätstyp abgerufen. Die Abfrage wird nicht ausgeführt, wenn dieses Objekt erstellt wird. Sie wird jedes Mal ausgeführt, wenn es aufgelistet wird, z. B. mit foreach. SQL-Abfragen für Nicht-Entitäten werden mit SqlQuery<TElement>(String, Object[])erstellt. Eine nicht generische Version dieser Klasse finden Sie DbSqlQuery unter.

DbUpdateConcurrencyException

Ausnahme ausgelöst, DbContext wenn erwartet wurde, dass SaveChanges für eine Entität zu einer Datenbankaktualisierung führen würde, aber tatsächlich keine Zeilen in der Datenbank betroffen waren. Dies weist in der Regel darauf hin, dass die Datenbank gleichzeitig aktualisiert wurde, sodass ein Parallelitätstoken, das erwartet wurde, nicht tatsächlich übereinstimmte. Beachten Sie, dass Zustandseinträge, auf die von dieser Ausnahme verwiesen wird, aufgrund der Sicherheit nicht serialisiert werden, und der Zugriff auf die Zustandseinträge nach der Serialisierung gibt NULL zurück.

DbUpdateException

Ausnahme, die ausgelöst wird DbContext , wenn beim Speichern von Änderungen an der Datenbank ein Fehler auftritt. Beachten Sie, dass Zustandseinträge, auf die von dieser Ausnahme verwiesen wird, aufgrund der Sicherheit nicht serialisiert werden, und der Zugriff auf die Zustandseinträge nach der Serialisierung gibt NULL zurück.

DefaultDbModelStore

Lädt oder speichert Modelle aus/in EDMX-Dateien an einem angegebenen Speicherort.

DefaultExecutionStrategy

Ein IDbExecutionStrategy , bei dem Vorgänge nicht wiederholt werden, wenn sie fehlschlagen.

DefaultManifestTokenResolver

Eine Standardimplementierung von IManifestTokenResolver , die den zugrunde liegenden Anbieter zum Abrufen des Manifesttokens verwendet. Beachten Sie, dass diese Implementierung die Zwischenspeicherung basierend auf dem tatsächlichen Typ der DbConnection instance, der DataSource -Eigenschaft und der Database -Eigenschaft verwendet, um mehrere Abfragen zu vermeiden.

EdmMetadata

Stellt eine Entität dar, die zum Speichern von Metadaten zu einem EDM in der Datenbank verwendet wird.

EdmxReader

Hilfsprogrammklasse zum Lesen eines Metadatenmodells aus EDMX.

EdmxWriter

Enthält Methoden für den Zugriff auf das Entity Data Model, das mit Code First im EDMX-Format erstellt wurde. Diese Methoden werden in der Regel zum Debuggen verwendet, wenn das mit Code First intern erstellte Modell überprüft werden muss.

ExecutionStrategyKey

Ein Schlüssel, der zum Auflösen von Func<TResult>verwendet wird. Sie besteht aus dem invarianten Namen des ADO.NET Anbieters und dem Datenbankservernamen, wie in der Verbindungszeichenfolge angegeben.

IncludeMetadataConvention

Diese DbModelBuilder Konvention bewirkt, dass DbModelBuilder Beim Erstellen des Modells Metadaten zum Modell einschließt. Wenn DbContext ein Modell nach Konvention erstellt wird, wird diese Konvention der Liste der vom DbModelBuilder verwendeten Konventionen hinzugefügt. Dies führt dann dazu, dass Modellmetadaten in die Datenbank geschrieben werden, wenn dbContext zum Erstellen der Datenbank verwendet wird. Dies kann dann als schnelle Überprüfung verwendet werden, um festzustellen, ob sich das Modell seit der letzten Verwendung für die Datenbank geändert hat. Diese Konvention kann aus den DbModelBuilder Konventionen entfernt werden, indem die OnModelCreating-Methode für eine abgeleitete DbContext-Klasse überschrieben wird.

LocalDbConnectionFactory

Instanzen dieser Klasse werden verwendet, um DbConnection-Objekte für SQL Server LocalDb basierend auf einem angegebenen Datenbanknamen oder einer angegebenen Verbindungszeichenfolge zu erstellen.

ModelContainerConvention

Diese DbModelBuilder Konvention verwendet den Namen der abgeleiteten DbContext Klasse als Container für das von Code First erstellte konzeptionelle Modell.

ModelNamespaceConvention

Diese DbModelBuilder Konvention verwendet den Namespace der abgeleiteten DbContext Klasse als Namespace des konzeptionellen Modells, das von Code First erstellt wurde.

ObjectReferenceEqualityComparer

Vergleicht Objekte mithilfe der Verweisgleichheit.

ReplacementDbQueryWrapper<TElement>

Instanzen dieser Klasse werden intern verwendet, um konstante Ausdrücke für zu erstellen, die in die Ausdrucksstruktur ObjectQuery<T> eingefügt werden, um Verweise auf und DbQueryzu DbQuery<TResult> ersetzen.

RetryLimitExceededException

Die Ausnahme, die ausgelöst wird, wenn die Aktion erneut fehlgeschlagen ist, nachdem die konfigurierte Anzahl von Wiederholungen wiederholt wurde.

SqlCeConnectionFactory

Instanzen dieser Klasse werden zum Erstellen von DbConnection-Objekten für SQL Server Compact Edition auf Grundlage eines angegebenen Datenbanknamens oder einer angegebenen Verbindungszeichenfolge verwendet.

SqlConnectionFactory

Instanzen dieser Klasse werden zum Erstellen von DbConnection-Objekten für SQL Server auf Grundlage eines angegebenen Datenbanknamens oder einer angegebenen Verbindungszeichenfolge verwendet. Standardmäßig wird die Verbindung mit ".\SQLEXPRESS" hergestellt. Dies kann geändert werden, indem beim Erstellen einer Factoryinstanz die Basisverbindungszeichenfolge geändert wird.

SuppressDbSetInitializationAttribute

Dieses Attribut kann entweder auf eine gesamte abgeleitete DbContext Klasse oder auf einzelne DbSet<TEntity> Oder IDbSet<TEntity> Eigenschaften dieser Klasse angewendet werden. Wenn sie angewendet werden, werden alle ermittelten DbSet<TEntity> Eigenschaften oder IDbSet<TEntity> Eigenschaften weiterhin in das Modell aufgenommen, aber nicht automatisch initialisiert.

TableExistenceChecker

Wird von Entity Framework-Anbietern implementiert und verwendet, um zu überprüfen, ob Tabellen in einer bestimmten Datenbank vorhanden sind oder nicht. Dies wird von Datenbankinitialisierern verwendet, wenn ermittelt wird, ob eine vorhandene Datenbank als leer behandelt werden soll, sodass Tabellen erstellt werden sollen.

TransactionContext

Diese Klasse wird von CommitFailureHandler verwendet, um Informationen zur Transaktionsablaufverfolgung aus der Datenbank zu schreiben und zu lesen. Um die Definition der Transaktionstabelle anzupassen, können Sie von dieser Klasse ableiten und überschreiben OnModelCreating(DbModelBuilder). Abgeleitete Klassen können mit DbConfigurationregistriert werden.

TransactionHandler

Die Basisklasse für Interceptors, die die Transaktionsvorgänge verarbeiten. Abgeleitete Klassen können mit SetDefaultTransactionHandler(Func<TransactionHandler>) oder SetTransactionHandler(String, Func<TransactionHandler>, String)registriert werden.

TransactionRow

Rrepresents a transaction

UnintentionalCodeFirstException

Wird ausgelöst, wenn ein Kontext aus den DbContext Vorlagen im Modus Database First oder Model First generiert und dann im Code First-Modus verwendet wird.

Schnittstellen

IDbAsyncEnumerable

Asynchrone Version der IEnumerable Schnittstelle, die das asynchrone Abrufen von Elementen ermöglicht. Diese Schnittstelle wird für die Interaktion mit Entity Framework-Abfragen verwendet und sollte nicht von benutzerdefinierten Klassen implementiert werden.

IDbAsyncEnumerable<T>

Asynchrone Version der IEnumerable<T> Schnittstelle, die das asynchrone Abrufen von Elementen der aufzählbaren Sequenz ermöglicht. Diese Schnittstelle wird für die Interaktion mit Entity Framework-Abfragen verwendet und sollte nicht von benutzerdefinierten Klassen implementiert werden.

IDbAsyncEnumerator

Asynchrone Version der IEnumerator Schnittstelle, die das asynchrone Abrufen von Elementen ermöglicht. Diese Schnittstelle wird für die Interaktion mit Entity Framework-Abfragen verwendet und sollte nicht von benutzerdefinierten Klassen implementiert werden.

IDbAsyncEnumerator<T>

Asynchrone Version der IEnumerator<T> Schnittstelle, die das asynchrone Abrufen von Elementen ermöglicht. Diese Schnittstelle wird für die Interaktion mit Entity Framework-Abfragen verwendet und sollte nicht von benutzerdefinierten Klassen implementiert werden.

IDbAsyncQueryProvider

Definiert Methoden zum Erstellen und asynchronen Ausführen von Abfragen, die von einem IQueryable -Objekt beschrieben werden. Diese Schnittstelle wird für die Interaktion mit Entity Framework-Abfragen verwendet und sollte nicht von benutzerdefinierten Klassen implementiert werden.

IDbConnectionFactory

Implementierungen dieser Schnittstelle werden verwendet, um DbConnection-Objekte für einen Typ von Datenbankserver auf Grundlage eines angegebenen Datenbanknamens zu erstellen. Eine Instanz wird für die -Klasse festgelegt, damit alle DbContexts, die Database ohne Verbindungsinformationen oder nur einen Datenbanknamen oder eine Verbindungszeichenfolge erstellt werden, standardmäßig einen bestimmten Datenbankservertyp verwenden. Es werden zwei Implementierungen dieser Schnittstelle bereitgestellt: SqlConnectionFactory wird verwendet, um Verbindungen mit Microsoft SQL Server zu erstellen, einschließlich EXPRESS-Editionen. SqlCeConnectionFactorywird verwendet, um Verbindungen mit Microsoft SQL Server Compact Editionen zu erstellen. Nach Bedarf können weitere Implementierungen für andere Datenbankserver hinzugefügt werden. Beachten Sie, dass Implementierungen threadsicher oder unveränderlich sein sollten, da mehrere Threads gleichzeitig auf sie zugreifen können.

IDbContextFactory<TContext>

Eine Factory zum Erstellen abgeleiteter DbContext Instanzen. Implementieren Sie diese Schnittstelle, um Entwurfszeitdienste für Kontexttypen zu aktivieren, die keinen öffentlichen Standardkonstruktor haben. Zur Entwurfszeit können abgeleitete DbContext Instanzen erstellt werden, um bestimmte Entwurfszeiterfahrungen wie Modellrendering, DDL-Generierung usw. zu ermöglichen. Um die Entwurfszeitinstanziierung für abgeleitete DbContext Typen ohne öffentlichen Standardkonstruktor zu aktivieren, implementieren Sie diese Schnittstelle. Entwurfszeitdienste erkennen automatisch Implementierungen dieser Schnittstelle, die sich in derselben Assembly wie der abgeleitete DbContext Typ befinden.

IDbExecutionStrategy

Eine Strategie, die verwendet wird, um einen Befehl oder eine Abfrage für die Datenbank auszuführen, möglicherweise mit Logik zum Wiederholen, wenn ein Fehler auftritt.

IDbModelCacheKey

Stellt einen Schlüsselwert dar, der ein Entity Framework-Modell eindeutig identifiziert, das in den Arbeitsspeicher geladen wurde.

IDbModelCacheKeyProvider

Implementieren Sie diese Schnittstelle in Ihrem Kontext, um benutzerdefinierte Logik zum Berechnen des Schlüssels zu verwenden, der zum Suchen eines bereits erstellten Modells im Cache verwendet wird. Mit dieser Schnittstelle können Sie über einen einzelnen Kontexttyp verfügen, der mit verschiedenen Modellen in derselben AppDomain oder mehreren Kontexttypen verwendet werden kann, die dasselbe Modell verwenden.

IDbProviderFactoryResolver

Ein Dienst zum Abrufen der richtigen DbProviderFactory aus einer angegebenen DbConnection.

IManifestTokenResolver

Ein Dienst zum Abrufen eines Anbietermanifesttokens bei einer Verbindung. Die DefaultManifestTokenResolver -Klasse wird standardmäßig verwendet und verwendet den zugrunde liegenden Anbieter, um das Token abzurufen, was häufig das Öffnen der Verbindung umfasst. Stattdessen kann eine andere Implementierung verwendet werden, indem ein IDbDependencyResolverDbConfiguration hinzugefügt wird, das ggf. alle Informationen in der Verbindung verwendet, um das Token zurückzugeben. Wenn beispielsweise bekannt ist, dass die Verbindung auf eine SQL Server 2008-Datenbank verweist, kann "2008" zurückgegeben werden, ohne die Verbindung zu öffnen.

IMetadataAnnotationSerializer

Implementieren Sie diese Schnittstelle, damit benutzerdefinierte Anmerkungen, die von MetadataProperty Instanzen dargestellt werden, in und aus dem EDMX-XML serialisiert werden können. In der Regel wird ein Serialisierungsprogramm instance mithilfe der SetMetadataAnnotationSerializer(String, Func<IMetadataAnnotationSerializer>) -Methode festgelegt.

IObjectContextAdapter

Schnittstelle, die von -Objekten implementiert wird, die eine ObjectContext instance bereitstellen können. Die DbContext -Klasse implementiert diese Schnittstelle, um Zugriff auf den zugrunde liegenden ObjectContext bereitzustellen.

IProviderInvariantName

Wird von IDbDependencyResolver und DbConfiguration beim Auflösen eines anbieterinvarianten Namens aus einem DbProviderFactoryverwendet.

Enumerationen

DbConnectionStringOrigin

Beschreibt den Ursprung der Datenbankverbindungszeichenfolge, die einem DbContextzugeordnet ist.