System.Data.Entity-Namespace

[Diese Seite bezieht sich auf Entity Framework Version 6. Die neueste Version ist als 'Entity Framework' NuGet-Paket verfügbar. Weitere Informationen zu Entity Framework finden Sie unter msdn.com/data/ef.]

Der System.Data.Entity-Namespace enthält Klassen, die Zugriff auf die Kernfunktionen des Entity Framework bieten.

Klassen

  Klasse Beschreibung
Öffentliche Klasse CreateDatabaseIfNotExists<TContext> Eine Implementierung von IDatabaseInitializer, die nur dann die Datenbank neu erstellt und optional erneut Startwerte für die Datenbank festlegt, wenn die Datenbank nicht vorhanden ist.Zum Seeding der Datenbank erstellen Sie eine abgeleitete Klasse und überschreiben die Seed-Methode.
Öffentliche Klasse Database Eine Instanz dieser Klasse wird aus einem DbContext-Objekt abgerufen und kann zum Verwalten der Datenbank verwendet werden, die einen DbContext oder eine Verbindung unterstützt.Dies schließt das Erstellen, Löschen und Überprüfen auf Vorhandensein einer Datenbank ein.Beachten Sie, dass nur eine Verbindung erforderlich ist, um eine Datenbank zu löschen oder ihr Vorhandensein zu prüfen (alsoohne einen vollständigen Kontext), wenn Sie die statischen Methoden dieser Klasse verwenden.
Öffentliche Klasse DbConfiguration Eine Klasse, die von dieser Klasse abgeleitet ist, kann der gleichen Assembly wie eine Klasse hinzugefügt werden, die von DbContext abgeleitet ist, um die Entity Framework-Konfiguration für eine Anwendung zu definieren.Die Konfiguration wird festgelegt, indem geschützte Methoden aufgerufen und geschützte Eigenschaften dieser Klasse im Konstruktor des abgeleiteten Typs festgelegt werden.Der zu verwendende Typ kann auch in der Konfigurationsdatei der Anwendung registriert werden.Weitere Informationen zur Entity Framework-Konfiguration finden Sie unter https://go.microsoft.com/fwlink/?LinkId=260883.
Öffentliche Klasse DbConfigurationTypeAttribute Dieses Attribut kann in einer Unterklasse von DbContext platziert werden, um anzugeben, dass sich die Unterklasse von DbConfiguration, die für die codebasierte Konfiguration der Anwendung steht, in einer anderen Assembly als der Kontexttyp befindet.
Öffentliche Klasse DbContext Eine DbContext-Instanz stellt eine Kombination des Arbeitseinheitsmusters und des Repositorymusters dar, die zum Abfragen einer Datenbank und Gruppieren von Änderungen verwendet werden kann, die dann als Einheit in den Speicher zurückgeschrieben werden.DbContext gleicht konzeptionell ObjectContext.
Öffentliche Klasse DbContextTransaction Umschließt den Zugriff auf das Transaktionsobjekt auf der zugrunde liegenden Speicherverbindung und stellt sicher, dass Entity Framework Befehle für die Datenbank innerhalb des Kontexts dieser Transaktion ausführt.Eine Instanz dieser Klasse wird durch das Aufrufen von BeginTransaction() auf dem DbContextDatabase-Objekt abgerufen.
Öffentliche Klasse DbFunctionAttribute Gibt an, dass die angegebene Methode ein Proxy für eine EDM-Funktion ist.
Öffentliche Klasse DbFunctions Stellt CLR-Methoden (Common Language Runtime) bereit, die die kanonischen EDM-Funktionen für die Verwendung in DbContext oder ObjectContext LINQ to Entities-Abfragen verfügbar macht.
Öffentliche Klasse DbModelBuilder DbModelBuilder wird verwendet, um einem Datenbankschema CLR-Klassen zuzuordnen.Dieser codezentrierte Ansatz zum Erstellen eines Entity Data Model (EDM) wird als "Code First" bezeichnet.
Öffentliche Klasse DbModelBuilderVersionAttribute Dieses Attribut kann auf eine von DbContext abgeleitete Klasse angewendet werden, um festzulegen, welche Version von DbContext- und DbModelBuilder-Konventionen beim Erstellen eines Modells aus Code, der unter dem Namen "Code First" bekannt ist, verwendet werden soll.Ausführliche Informationen über DbModelBuilder-Versionen finden Sie in den Ausführungen zur DbModelBuilderVersion-Enumeration.
Öffentliche Klasse DbSet Eine nicht generische Version von DbSet<TEntity>, die verwendet werden kann, wenn der Typ der Entität zur Erstellungszeit nicht bekannt ist.
Öffentliche Klasse DbSet<TEntity> Ein DbSet stellt die Auflistung aller Entitäten eines bestimmten Typs dar, die im Kontext vorhanden sind oder von der Datenbank abgefragt werden können.DbSet-Objekte werden aus einem DbContext mit der DbContext.Set-Methode erstellt.
Öffentliche Klasse DropCreateDatabaseAlways<TContext> Eine Implementierung von IDatabaseInitializer, die immer die Datenbank neu erstellt und optional neu mit Startwerten versieht, wenn ein Kontext zum ersten Mal in der Anwendungsdomäne verwendet wird.Zum Seeding der Datenbank erstellen Sie eine abgeleitete Klasse und überschreiben die Seed-Methode.
Öffentliche Klasse DropCreateDatabaseIfModelChanges<TContext> Eine Implementierung von IDatabaseInitializer, die die Datenbank nur dann LÖSCHT, neu erstellt und optional neu mit Startwerten versehen wird, wenn sich das Modell seit dem Erstellen der Datenbank geändert hat.
Öffentliche Klasse MigrateDatabaseToLatestVersion<TContext, TMigrationsConfiguration> Eine IDatabaseInitializer<TContext>-Implementierung, die Code First-Migrationen verwendet, um die Datenbank auf die neueste Migration zu aktualisieren.
Öffentliche Klasse NullDatabaseInitializer<TContext> Eine Implementierung von IDatabaseInitializer<TContext>, die keine Aktionen ausführt.Die Verwendung dieses Initialisierers deaktiviert die Datenbankinitialisierung für den angegebenen Kontexttyp.Das Übergeben einer Instanz dieser Klasse an SetInitializer<TContext>(IDatabaseInitializer<TContext>) entspricht der Übergabe von NULL.Wenn IDbDependencyResolver verwendet wird, um Initialisierer aufzulösen, muss eine Instanz dieser Klasse verwendet werden, um die Initialisierung zu deaktivieren.
Öffentliche Klasse ObservableCollectionExtensions Erweiterungsmethoden für ObservableCollection<T>.
Öffentliche Klasse QueryableExtensions Stellt hilfreiche Erweiterungsmethoden zur Verwendung mit Entity Framework LINQ-Abfragen bereit.

Schnittstellen

  Interface Beschreibung
Öffentliche Schnittstelle IDatabaseInitializer<TContext> Eine Implementierung dieser Schnittstelle wird verwendet, um die zugrunde liegende Datenbank zu initialisieren, wenn eine Instanz einer abgeleiteten DbContext-Klasse zum ersten Mal verwendet wird.Diese Initialisierung kann die Datenbank bedingt erstellen und/oder Startwerte für die Datenbank festlegen.Die verwendete Strategie wird mithilfe der InitializationStrategy-Eigenschaft der Database-Klasse festgelegt.Die folgenden Implementierungen werden bereitgestellt: DropCreateDatabaseIfModelChanges<TContext>, DropCreateDatabaseAlways<TContext>, CreateDatabaseIfNotExists<TContext>.
Öffentliche Schnittstelle IDbSet<TEntity> Ein IDbSet<TEntity>stellt die Auflistung aller Entitäten eines bestimmten Typs dar, die im Kontext vorhanden sind oder von der Datenbank abgefragt werden können.DbSet<TEntity> ist eine konkrete Implementierung von IDbSet.

Enumerationen

  Enumeration Beschreibung
Öffentliche Enumeration DbModelBuilderVersion Ein Wert aus dieser Enumeration kann direkt für die DbModelBuilder-Klasse bereitgestellt werden oder im DbModelBuilderVersionAttribute verwendet werden, das auf eine von DbContext abgeleitete Klasse angewendet wird.Der verwendete Wert definiert, welche Version der DbContext- und DbModelBuilder-Konventionen beim Erstellen eines Modells mit Code, der unter dem Namen "Code First" bekannt ist.
Öffentliche Enumeration EntityState Beschreibt den Status einer Entität.
Öffentliche Enumeration TransactionalBehavior Steuert das Transaktionserstellungsverhalten beim Ausführen eines Datenbankbefehls oder einer Datenbankabfrage.