DbModelBuilder Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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. |