Condividi tramite


DbModelBuilder Classe

Definizione

DbModelBuilder viene usato per eseguire il mapping delle classi CLR a uno schema di database. Questo approccio incentrato sul codice per la creazione di un modello EDM (Entity Data Model) è noto come "Code First".

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", MessageId="Db")]
public class DbModelBuilder
public class DbModelBuilder
type DbModelBuilder = class
Public Class DbModelBuilder
Ereditarietà
DbModelBuilder
Attributi

Commenti

DbModelBuilder viene in genere usato per configurare un modello eseguendo l'override di DbContext.OnModelCreating(DbModelBuilder). È anche possibile usare DbModelBuilder in modo indipendente da DbContext per compilare un modello e quindi costruire un DbContext oggetto o ObjectContext. L'approccio consigliato, tuttavia, consiste nell'usare OnModelCreating in DbContext perché il flusso di lavoro è più intuitivo e si occupa delle attività comuni, ad esempio la memorizzazione nella cache del modello creato. I tipi che formano il modello vengono registrati con DbModelBuilder e la configurazione facoltativa possono essere eseguiti applicando annotazioni di dati alle classi e/o usando l'API DbModelBuilder di stile fluente. Quando viene chiamato il metodo Build, viene eseguito un set di convenzioni per individuare il modello iniziale. Queste convenzioni individuano automaticamente aspetti del modello come le chiavi primarie ed elaborano inoltre tutte le annotazioni dati specificate nelle classi. Infine, viene applicata una configurazione eseguita mediante l'API DbModelBuilder. La configurazione eseguita tramite l'API DbModelBuilder ha la precedenza sulle annotazioni dei dati che a sua volta hanno la precedenza sulle convenzioni predefinite.

Costruttori

DbModelBuilder()

Inizializza una nuova istanza della classe DbModelBuilder. Il processo di individuazione del modello iniziale userà il set di convenzioni incluse nella versione più recente di Entity Framework installata nel computer.

DbModelBuilder(DbModelBuilderVersion)

Inizializza una nuova istanza della DbModelBuilder classe che userà un set specifico di convenzioni per individuare il modello iniziale.

Proprietà

Configurations

Ottiene l'oggetto ConfigurationRegistrar per dbModelBuilder. Il registrar consente di registrare le configurazioni del tipo complesso e del tipo di entità derivato con il generatore.

Conventions

Fornisce l'accesso alle impostazioni di dbModelBuilder che gestiscono le convenzioni.

Metodi

Build(DbConnection)

Crea un oggetto DbModel basato sulla configurazione eseguita usando questo generatore. La connessione viene utilizzata per determinare il provider del database utilizzato poiché influisce sul livello di database del modello generato.

Build(DbProviderInfo)

Crea un oggetto DbModel basato sulla configurazione eseguita usando questo generatore. È necessario specificare le informazioni sul provider poiché quest'ultimo influisce sul livello di database del modello generato. Per SqlClient il nome invariante è "System.Data.SqlClient" e il token manifesto è l'anno di versione ( ad esempio '2005', '2008' e così via)

ComplexType<TComplexType>()

Registra un tipo come tipo complesso nel modello e restituisce un oggetto che può essere usato per configurare il tipo complesso. Questo metodo può essere chiamato più volte per lo stesso tipo per eseguire più righe di configurazione.

Entity<TEntityType>()

Registra un tipo di entità come parte del modello e restituisce un oggetto che può essere usato per configurare l'entità. Questo metodo può essere chiamato più volte per la stessa entità per eseguire più righe di configurazione.

Equals(Object)

DbModelBuilder viene usato per eseguire il mapping delle classi CLR a uno schema di database. Questo approccio incentrato sul codice per la creazione di un modello EDM (Entity Data Model) è noto come "Code First".

GetHashCode()

DbModelBuilder viene usato per eseguire il mapping delle classi CLR a uno schema di database. Questo approccio incentrato sul codice per la creazione di un modello EDM (Entity Data Model) è noto come "Code First".

GetType()

Ottiene l'oggetto Type dell'istanza corrente.

HasDefaultSchema(String)

Configura il nome dello schema di database predefinito. Questo nome predefinito dello schema di database viene usato per gli oggetti di database che non hanno un nome dello schema configurato in modo esplicito.

Ignore(IEnumerable<Type>)

Esclude i tipi specificati dal modello. Viene usato per rimuovere dal modello i tipi che sono stati aggiunti per convenzione durante la fase iniziale di individuazione del modello.

Ignore<T>()

Esclude un tipo dal modello. Viene usato per rimuovere dal modello i tipi che sono stati aggiunti per convenzione durante la fase iniziale di individuazione del modello.

Properties()

Inizia la configurazione di una convenzione leggera che si applica a tutte le proprietà nel modello.

Properties<T>()

Avvia la configurazione di una convenzione leggera che si applica a tutte le proprietà primitive del tipo specificato nel modello.

RegisterEntityType(Type)

Registra un tipo di entità come parte del modello.

ToString()

DbModelBuilder viene usato per eseguire il mapping delle classi CLR a uno schema di database. Questo approccio incentrato sul codice per la creazione di un modello EDM (Entity Data Model) è noto come "Code First".

Types()

Avvia la configurazione di una convenzione leggera che si applica a tutte le entità e ai tipi complessi nel modello.

Types<T>()

Avvia la configurazione di una convenzione leggera che si applica a tutte le entità e ai tipi complessi nel modello che ereditano o implementano il tipo specificato dall'argomento generico. Questo metodo non registra i tipi come parte del modello.

Si applica a