DbModelBuilder Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
DbModelBuilder wird verwendet, um CLR-Klassen einem Datenbankschema zuzuordnen. Dieser codezentrierte Ansatz zum Erstellen eines Entity Data Model(EDM)-Modells wird als "Code First" bezeichnet.
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId="Db")]
public class DbModelBuilder
public class DbModelBuilder
type DbModelBuilder = class
Public Class DbModelBuilder
- Vererbung
-
DbModelBuilder
- Attribute
Hinweise
DbModelBuilder wird in der Regel verwendet, um ein Modell zu konfigurieren, indem DbContext.OnModelCreating(DbModelBuilder) überschrieben wird. Sie können DbModelBuilder auch unabhängig von DbContext verwenden, um ein Modell zu erstellen und dann ein oder ObjectContextzu DbContext erstellen. Der empfohlene Ansatz besteht jedoch darin, OnModelCreating in DbContext zu verwenden, da der Workflow intuitiver ist und sich um häufige Aufgaben wie das Zwischenspeichern des erstellten Modells kümmert. Typen, die Ihr Modell bilden, werden bei DbModelBuilder registriert, und die optionale Konfiguration kann durch Anwenden von Datenanmerkungen auf Ihre Klassen und/oder mithilfe der DbModelBuilder-API im Fluent-Stil ausgeführt werden. Beim Aufruf der Build-Methode wird ein Satz von Konventionen ausgeführt, um das ursprüngliche Modell zu ermitteln. Diese Konventionen ermitteln automatisch Aspekte des Modells, z. B. Primärschlüssel, und verarbeiten außerdem alle Datenanmerkungen, die für die Klassen angegeben wurden. Schließlich wird jede Konfiguration, die mit der DbModelBuilder-API ausgeführt wurde, angewendet. Die Konfiguration über die DbModelBuilder-API hat Vorrang vor Datenanmerkungen, die wiederum Vorrang vor den Standardkonventionen haben.
Konstruktoren
DbModelBuilder() |
Initialisiert eine neue Instanz der DbModelBuilder-Klasse. Beim Ermitteln des anfänglichen Modells wird der Satz von Konventionen verwendet, die in der neuesten Version des auf Ihrem Computer installierten Entity Framework enthalten sind. |
DbModelBuilder(DbModelBuilderVersion) |
Initialisiert eine neue instance der -Klasse, die DbModelBuilder einen bestimmten Satz von Konventionen verwendet, um das anfängliche Modell zu ermitteln. |
Eigenschaften
Configurations |
Ruft die ConfigurationRegistrar für dieses DbModelBuilder-Objekt ab. Die Registrierungsstelle ermöglicht das Registrieren von abgeleiteten Konfigurationen für Entitäten und komplexe Typen bei dem Generator. |
Conventions |
Bietet Zugriff auf die Einstellungen dieses DbModelBuilders, die Konventionen behandeln. |
Methoden
Build(DbConnection) |
Erstellt eine DbModel basierend auf der Konfiguration, die mit diesem Generator ausgeführt wurde. Die Verbindung wird verwendet, um den verwendeten Datenbankanbieter zu bestimmen, da sich dies auf die Datenbankebene des generierten Modells auswirkt. |
Build(DbProviderInfo) |
Erstellt eine DbModel basierend auf der Konfiguration, die mit diesem Generator ausgeführt wurde. Anbieterinformationen müssen angegeben werden, da sich dies auf die Datenbankebene des generierten Modells auswirkt. Für SqlClient lautet der invariante Name "System.Data.SqlClient", und das Manifesttoken ist das Versionsjahr (z. B. "2005", "2008" usw.). |
ComplexType<TComplexType>() |
Registriert einen Typ als komplexen Typ im Modell und gibt ein Objekt zurück, das zum Konfigurieren des komplexen Typs verwendet werden kann. Diese Methode kann mehrmals für den gleichen Typ aufgerufen werden, um mehrere Konfigurationszeilen auszuführen. |
Entity<TEntityType>() |
Registriert einen Entitätstyp als Teil des Modells und gibt ein Objekt zurück, das zum Konfigurieren der Entität verwendet werden kann. Diese Methode kann mehrmals für die gleiche Entität aufgerufen werden, um mehrere Konfigurationszeilen auszuführen. |
Equals(Object) |
DbModelBuilder wird verwendet, um CLR-Klassen einem Datenbankschema zuzuordnen. Dieser codezentrierte Ansatz zum Erstellen eines Entity Data Model(EDM)-Modells wird als "Code First" bezeichnet. |
GetHashCode() |
DbModelBuilder wird verwendet, um CLR-Klassen einem Datenbankschema zuzuordnen. Dieser codezentrierte Ansatz zum Erstellen eines Entity Data Model(EDM)-Modells wird als "Code First" bezeichnet. |
GetType() |
Ruft den Type der aktuellen Instanz ab. |
HasDefaultSchema(String) |
Konfiguriert den Standardnamen des Datenbankschemas. Dieser Standardname des Datenbankschemas wird für Datenbankobjekte verwendet, die keinen explizit konfigurierten Schemanamen haben. |
Ignore(IEnumerable<Type>) |
Schließt die angegebenen Typen aus dem Modell aus. Diese Option wird verwendet, um Typen aus dem Modell zu entfernen, die durch Konvention während der anfänglichen Modellerkennung hinzugefügt wurden. |
Ignore<T>() |
Schließt einen Typ aus dem Modell aus. Diese Option wird verwendet, um Typen aus dem Modell zu entfernen, die durch Konvention während der anfänglichen Modellerkennung hinzugefügt wurden. |
Properties() |
Beginnt mit der Konfiguration einer Lightweight-Konvention, die für alle Eigenschaften im Modell gilt. |
Properties<T>() |
Beginnt mit der Konfiguration einer Lightweight-Konvention, die für alle primitiven Eigenschaften des angegebenen Typs im Modell gilt. |
RegisterEntityType(Type) |
Registriert einen Entitätstyp als Teil des Modells. |
ToString() |
DbModelBuilder wird verwendet, um CLR-Klassen einem Datenbankschema zuzuordnen. Dieser codezentrierte Ansatz zum Erstellen eines Entity Data Model(EDM)-Modells wird als "Code First" bezeichnet. |
Types() |
Beginnt mit der Konfiguration einer Lightweight-Konvention, die für alle Entitäten und komplexen Typen im Modell gilt. |
Types<T>() |
Beginnt mit der Konfiguration einer Lightweight-Konvention, die für alle Entitäten und komplexen Typen im Modell gilt, die den vom generischen Argument angegebenen Typ erben oder implementieren. Diese Methode registriert keine Typen als Teil des Modells. |
Gilt für:
Entity Framework