RuntimeModel Classe

Definizione

Metadati relativi alla forma delle entità, alle relazioni tra di esse e alla modalità di mapping al database. Un modello viene in genere creato eseguendo l'override del OnModelCreating(ModelBuilder) metodo su un oggetto derivato DbContext.

public class RuntimeModel : Microsoft.EntityFrameworkCore.Infrastructure.AnnotatableBase, Microsoft.EntityFrameworkCore.Metadata.Internal.IRuntimeModel
type RuntimeModel = class
    inherit AnnotatableBase
    interface IRuntimeModel
    interface IModel
    interface IReadOnlyModel
    interface IReadOnlyAnnotatable
    interface IAnnotatable
Public Class RuntimeModel
Inherits AnnotatableBase
Implements IRuntimeModel
Ereditarietà
RuntimeModel
Implementazioni
IAnnotatable IReadOnlyAnnotatable IModel Microsoft.EntityFrameworkCore.Metadata.Internal.IRuntimeModel IReadOnlyModel

Commenti

Si tratta di un'implementazione leggera che viene costruita da un modello compilato e non deve essere usata in fase di progettazione.

La durata del servizio è Scoped. Ciò significa che ogni DbContext istanza userà la propria istanza di questo servizio. L'implementazione può dipendere da altri servizi registrati per qualsiasi durata. L'implementazione non deve essere thread-safe.

Per altre informazioni ed esempi, vedere Modellazione di tipi di entità e relazioni .

Costruttori

RuntimeModel()

Metadati relativi alla forma delle entità, alle relazioni tra di esse e alla modalità di mapping al database. Un modello viene in genere creato eseguendo l'override del OnModelCreating(ModelBuilder) metodo su un oggetto derivato DbContext.

Proprietà

DebugView

Si tratta di un'API interna che supporta l'infrastruttura Entity Framework Core e non è soggetta agli stessi standard di compatibilità delle API pubbliche. Può essere modificato o rimosso senza preavviso in nessuna versione. È consigliabile usarlo direttamente nel codice con attenzione estrema e sapere che ciò può causare errori dell'applicazione durante l'aggiornamento a una nuova versione di Entity Framework Core.

IsReadOnly

Indica se l'oggetto corrente è di sola lettura.

(Ereditato da AnnotatableBase)
Item[String]

Ottiene l'annotazione del valore con il nome specificato, che restituisce null se non esiste.

(Ereditato da AnnotatableBase)
ModelId

Si tratta di un'API interna che supporta l'infrastruttura Entity Framework Core e non è soggetta agli stessi standard di compatibilità delle API pubbliche. Può essere modificato o rimosso senza preavviso in alcuna versione. È consigliabile usarlo direttamente nel codice con estrema cautela e sapere che questa operazione può causare errori dell'applicazione durante l'aggiornamento a una nuova versione di Entity Framework Core.

Metodi

AddAnnotation(String, Annotation)

Aggiunge un'annotazione a questo oggetto. Genera se esiste già un'annotazione con il nome specificato.

(Ereditato da AnnotatableBase)
AddAnnotation(String, Object)

Aggiunge un'annotazione a questo oggetto. Genera se esiste già un'annotazione con il nome specificato.

(Ereditato da AnnotatableBase)
AddAnnotations(IEnumerable<IAnnotation>)

Aggiunge annotazioni a questo oggetto.

(Ereditato da AnnotatableBase)
AddAnnotations(IReadOnlyDictionary<String,Object>)

Aggiunge annotazioni a questo oggetto.

(Ereditato da AnnotatableBase)
AddEntityType(String, Type, RuntimeEntityType, Boolean, String, ChangeTrackingStrategy, PropertyInfo, Boolean)

Aggiunge un tipo di entità con una definizione dello spostamento al modello.

AddEntityType(String, Type, RuntimeEntityType, Boolean, String, ChangeTrackingStrategy, PropertyInfo, Boolean, Object)

Aggiunge un tipo di entità con una definizione dello spostamento al modello.

AddRuntimeAnnotation(String, Annotation)

Aggiunge un'annotazione di runtime a questo oggetto. Genera se esiste già un'annotazione con il nome specificato.

(Ereditato da AnnotatableBase)
AddRuntimeAnnotation(String, Object)

Aggiunge un'annotazione di runtime a questo oggetto. Genera se esiste già un'annotazione con il nome specificato.

(Ereditato da AnnotatableBase)
AddRuntimeAnnotations(IEnumerable<Annotation>)

Aggiunge annotazioni di runtime a questo oggetto.

(Ereditato da AnnotatableBase)
AddRuntimeAnnotations(IReadOnlyDictionary<String,Object>)

Aggiunge annotazioni di runtime a questo oggetto.

(Ereditato da AnnotatableBase)
AddTypeMappingConfiguration(Type, Nullable<Int32>, Nullable<Boolean>, Nullable<Int32>, Nullable<Int32>, Type, ValueConverter)

Aggiunge la configurazione per un tipo scalare.

CreateAnnotation(String, Object)

Crea una nuova annotazione.

(Ereditato da AnnotatableBase)
CreateRuntimeAnnotation(String, Object)

Crea una nuova annotazione di runtime.

(Ereditato da AnnotatableBase)
EnsureMutable()

Genera se il modello è di sola lettura.

(Ereditato da AnnotatableBase)
EnsureReadOnly()

Genera se il modello non è di sola lettura.

(Ereditato da AnnotatableBase)
FindAdHocEntityType(Type)

Ottiene il tipo di entità con il nome specificato. Restituisce null se nessun tipo di entità con il nome specificato è stato mappato come tipo ad hoc.

FindAnnotation(String)

Ottiene l'annotazione con il nome specificato, che restituisce null se non esiste.

(Ereditato da AnnotatableBase)
FindEntityType(String)

Ottiene il tipo di entità con il nome specificato. Restituisce null se non viene trovato alcun tipo di entità con il nome specificato o il tipo CLR specificato viene usato dal tipo di entità di tipo condiviso o il tipo di entità ha una navigazione definita.

FindRuntimeAnnotation(String)

Ottiene l'annotazione di runtime con il nome specificato, che restituisce null se non esiste.

(Ereditato da AnnotatableBase)
GetAdHocEntityTypes()

Ottiene tutti i tipi di entità ad hoc definiti nel modello.

GetAnnotation(String)

Ottiene l'annotazione con il nome specificato, generando se non esiste.

(Ereditato da AnnotatableBase)
GetAnnotations()

Ottiene tutte le annotazioni nell'oggetto corrente.

(Ereditato da AnnotatableBase)
GetOrAddAdHocEntityType(RuntimeEntityType)

Aggiunge un tipo di entità ad hoc al modello.

GetOrAddRuntimeAnnotationValue<TValue,TArg>(String, Func<TArg,TValue>, TArg)

Ottiene il valore dell'annotazione di runtime con il nome specificato, aggiungendolo se non esiste.

(Ereditato da AnnotatableBase)
GetRuntimeAnnotations()

Ottiene tutte le annotazioni di runtime nell'oggetto corrente.

(Ereditato da AnnotatableBase)
OnAnnotationSet(String, Annotation, Annotation)

Chiamato quando è stata impostata o rimossa un'annotazione.

(Ereditato da AnnotatableBase)
RemoveAnnotation(String)

Rimuove l'annotazione specificata da questo oggetto.

(Ereditato da AnnotatableBase)
RemoveRuntimeAnnotation(String)

Rimuove l'annotazione di runtime specificata da questo oggetto.

(Ereditato da AnnotatableBase)
SetAnnotation(String, Annotation, Annotation)

Imposta l'annotazione archiviata sotto la chiave specificata. Sovrascrive l'annotazione esistente se esiste già un'annotazione con il nome specificato.

(Ereditato da AnnotatableBase)
SetAnnotation(String, Object)

Imposta l'annotazione archiviata sotto la chiave specificata. Sovrascrive l'annotazione esistente se esiste già un'annotazione con il nome specificato.

(Ereditato da AnnotatableBase)
SetRuntimeAnnotation(String, Annotation, Annotation)

Imposta l'annotazione di runtime archiviata sotto la chiave specificata. Sovrascrive l'annotazione esistente se esiste già un'annotazione con il nome specificato.

(Ereditato da AnnotatableBase)
SetRuntimeAnnotation(String, Object)

Imposta l'annotazione di runtime archiviata sotto la chiave specificata. Sovrascrive l'annotazione esistente se esiste già un'annotazione con il nome specificato.

(Ereditato da AnnotatableBase)
SetSkipDetectChanges(Boolean)

Imposta un valore che indica se DetectChanges() deve essere chiamato.

Implementazioni dell'interfaccia esplicita

IAnnotatable.AddRuntimeAnnotation(String, Object)

Aggiunge un'annotazione di runtime a questo oggetto. Genera se esiste già un'annotazione con il nome specificato.

(Ereditato da AnnotatableBase)
IAnnotatable.FindRuntimeAnnotation(String)

Ottiene l'annotazione di runtime con il nome specificato, che restituisce null se non esiste.

(Ereditato da AnnotatableBase)
IAnnotatable.GetRuntimeAnnotations()

Ottiene tutte le annotazioni di runtime nell'oggetto corrente.

(Ereditato da AnnotatableBase)
IAnnotatable.RemoveRuntimeAnnotation(String)

Rimuove l'annotazione di runtime specificata da questo oggetto.

(Ereditato da AnnotatableBase)
IAnnotatable.SetRuntimeAnnotation(String, Object)

Imposta l'annotazione di runtime archiviata sotto la chiave specificata. Sovrascrive l'annotazione esistente se esiste già un'annotazione con il nome specificato.

(Ereditato da AnnotatableBase)
IModel.FindEntityType(String)

Ottiene l'entità con il nome specificato. Restituisce null se non viene trovato alcun tipo di entità con il nome specificato o il tipo CLR specificato viene usato dal tipo di entità di tipo condiviso o il tipo di entità ha una navigazione definita.

IModel.FindEntityType(String, String, IEntityType)

Ottiene il tipo di entità per il nome specificato, definendo il nome di spostamento e il tipo di entità che definisce il tipo di entità. Restituisce null se non viene trovato alcun tipo di entità corrispondente.

IModel.FindEntityType(Type)

Ottiene l'entità che esegue il mapping della classe di entità specificata. Restituisce null se non viene trovato alcun tipo di entità con il tipo CLR specificato o il tipo CLR specificato viene usato dal tipo di entità di tipo condiviso o il tipo di entità ha una navigazione definita.

IModel.FindEntityTypes(Type)

Ottiene i tipi di entità corrispondenti al tipo specificato.

IModel.FindTypeMappingConfiguration(Type)

Trova la configurazione pre-convenzione per un determinato scalare Type.

IModel.GetEntityTypes()

Ottiene tutti i tipi di entità definiti nel modello.

IModel.GetTypeMappingConfigurations()

Ottiene tutte le configurazioni preconvezioni.

IModel.IsIndexerMethod(MethodInfo)

Ottiene un valore che indica se l'oggetto specificato MethodInfo rappresenta un accesso dell'indicizzatore.

IReadOnlyAnnotatable.FindAnnotation(String)

Ottiene l'annotazione con il nome specificato, che restituisce null se non esiste.

(Ereditato da AnnotatableBase)
IReadOnlyAnnotatable.GetAnnotations()

Ottiene tutte le annotazioni nell'oggetto corrente.

(Ereditato da AnnotatableBase)
IReadOnlyAnnotatable.Item[String]

Ottiene il valore dell'annotazione con il nome specificato, restituito null se non esiste.

(Ereditato da AnnotatableBase)
IReadOnlyModel.FindEntityType(String)

Ottiene il tipo di entità con il nome specificato. Restituisce null se non viene trovato alcun tipo di entità con il nome specificato o il tipo CLR specificato viene usato dal tipo di entità di tipo condiviso o il tipo di entità ha una navigazione definita.

IReadOnlyModel.FindEntityType(String, String, IReadOnlyEntityType)

Ottiene il tipo di entità per il nome di base specificato, definendo il nome di spostamento e il tipo di entità che definisce. Restituisce null se non viene trovato alcun tipo di entità corrispondente.

IReadOnlyModel.FindEntityType(Type)

Ottiene l'entità che esegue il mapping della classe di entità specificata. Restituisce null se non viene trovato alcun tipo di entità con il tipo CLR specificato o il tipo CLR specificato viene usato dal tipo di entità di tipo condiviso o il tipo di entità ha una navigazione definita.

IReadOnlyModel.FindEntityType(Type, String, IReadOnlyEntityType)

Ottiene il tipo di entità per il tipo specificato, definendo il nome di spostamento e il tipo di entità che definisce. Restituisce null se non viene trovato alcun tipo di entità corrispondente.

IReadOnlyModel.FindEntityTypes(Type)

Ottiene i tipi di entità corrispondenti al tipo specificato.

IReadOnlyModel.GetChangeTrackingStrategy()

Ottiene la strategia di rilevamento delle modifiche predefinita usata per le entità nel modello. Questa strategia indica come il contesto rileva le modifiche alle proprietà per un'istanza di un tipo di entità.

IReadOnlyModel.GetEntityTypes()

Ottiene tutti i tipi di entità definiti nel modello.

IReadOnlyModel.GetPropertyAccessMode()

Ottiene l'oggetto PropertyAccessMode usato per le proprietà dei tipi di entità in questo modello.

IReadOnlyModel.IsShared(Type)

Ottiene un valore che indica se il tipo CLR viene usato dalle entità di tipo condiviso nel modello.

IReadOnlyModel.ModelId

Si tratta di un'API interna che supporta l'infrastruttura Entity Framework Core e non è soggetta agli stessi standard di compatibilità delle API pubbliche. Può essere modificato o rimosso senza preavviso in nessuna versione. È consigliabile usarlo direttamente nel codice con attenzione estrema e sapere che ciò può causare errori dell'applicazione durante l'aggiornamento a una nuova versione di Entity Framework Core.

IRuntimeModel.RelationalModel

Si tratta di un'API interna che supporta l'infrastruttura Entity Framework Core e non è soggetta agli stessi standard di compatibilità delle API pubbliche. Può essere modificato o rimosso senza preavviso in nessuna versione. È consigliabile usarlo direttamente nel codice con attenzione estrema e sapere che ciò può causare errori dell'applicazione durante l'aggiornamento a una nuova versione di Entity Framework Core.

IRuntimeModel.SkipDetectChanges

Metadati relativi alla forma delle entità, alle relazioni tra di esse e alla modalità di mapping al database. Un modello viene in genere creato eseguendo l'override del OnModelCreating(ModelBuilder) metodo su un oggetto derivato DbContext.

Metodi di estensione

GetDefaultContainer(IModel)

Restituisce il nome del contenitore predefinito.

GetDefaultContainer(IReadOnlyModel)

Restituisce il nome del contenitore predefinito.

GetThroughput(IReadOnlyModel)

Restituisce la velocità effettiva con provisioning nell'ambito del database.

AnnotationsToDebugString(IAnnotatable, Int32)

Ottiene la stringa di debug per tutte le annotazioni dichiarate nell'oggetto.

GetRelationalDependencies(IModel, String)

Restituisce le dipendenze del servizio relazionale.

FindEntityType(IModel, Type)
Obsoleta..

Ottiene l'entità che esegue il mapping della classe di entità specificata. Restituisce null se non viene trovato alcun tipo di entità con il tipo CLR specificato o se il tipo CLR specificato viene usato dal tipo di entità di tipo condiviso o il tipo di entità dispone di una struttura di spostamento che definisce.

GetEntityTypes(IModel, String)
Obsoleta..

Ottiene i tipi di entità corrispondenti al nome specificato.

GetEntityTypes(IModel, Type)
Obsoleta..

Ottiene i tipi di entità corrispondenti al tipo specificato.

GetProductVersion(IModel)

Ottiene la versione dell'assembly EF Core usata per compilare questo modello

HasEntityTypeWithDefiningNavigation(IModel, String)
Obsoleta..

Ottiene un valore che indica se il modello contiene un tipo di entità corrispondente con una struttura di spostamento che definisce.

HasEntityTypeWithDefiningNavigation(IModel, Type)
Obsoleta..

Ottiene un valore che indica se il modello contiene un tipo di entità corrispondente con una struttura di spostamento che definisce.

IsIndexerMethod(IModel, MethodInfo)

Ottiene un valore che indica se l'oggetto MethodInfo specificato restituisce un accesso a un indicizzatore.

IsShared(IModel, Type)

Ottiene un valore che indica se il tipo CLR viene utilizzato dalle entità di tipo condiviso nel modello.

ToDebugString(IModel, MetadataDebugStringOptions, Int32)

Crea una rappresentazione leggibile dei metadati specificati.

Avviso: non fare affidamento sul formato della stringa restituita. È progettato solo per il debug e può cambiare arbitrariamente tra le versioni.

FindDbFunction(IModel, MethodInfo)

Trova una funzione mappata al metodo rappresentato dall'oggetto specificato MethodInfo.

FindDbFunction(IModel, String)

Trova una funzione mappata al metodo rappresentato dal nome specificato.

FindDbFunction(IReadOnlyModel, MethodInfo)

Trova una funzione mappata al metodo rappresentato dall'oggetto specificato MethodInfo.

FindDbFunction(IReadOnlyModel, String)

Trova una funzione mappata al metodo rappresentato dal nome specificato.

FindSequence(IModel, String, String)

Trova una sequenza con il nome specificato.

FindSequence(IReadOnlyModel, String, String)

Trova una sequenza con il nome specificato.

GetCollation(IModel)

Restituisce le regole di confronto del database.

GetCollation(IReadOnlyModel)

Restituisce le regole di confronto del database.

GetDbFunctions(IModel)

Restituisce tutte le funzioni contenute nel modello.

GetDbFunctions(IReadOnlyModel)

Restituisce tutte le funzioni contenute nel modello.

GetDefaultSchema(IModel)

Restituisce lo schema predefinito da utilizzare per il modello o null se non è stato impostato alcuno.

GetDefaultSchema(IReadOnlyModel)

Restituisce lo schema predefinito da utilizzare per il modello o null se non è stato impostato alcuno.

GetMaxIdentifierLength(IModel)

Restituisce la lunghezza massima consentita per gli identificatori di archivio.

GetMaxIdentifierLength(IReadOnlyModel)

Restituisce la lunghezza massima consentita per gli identificatori di archivio.

GetRelationalModel(IModel)

Restituisce il modello di database.

GetSequences(IModel)

Restituisce tutte le sequenze contenute nel modello.

GetSequences(IReadOnlyModel)

Restituisce tutte le sequenze contenute nel modello.

GetFluentApiCalls(IModel, IAnnotationCodeGenerator)

Ottiene le chiamate all'API Fluent per configurare un modello.

GetDatabaseMaxSize(IModel)

Restituisce le dimensioni massime del database.

GetDatabaseMaxSize(IReadOnlyModel)

Restituisce le dimensioni massime del database.

GetHiLoSequenceName(IModel)

Restituisce il nome da utilizzare per la sequenza hi-lo predefinita.

GetHiLoSequenceName(IReadOnlyModel)

Restituisce il nome da utilizzare per la sequenza hi-lo predefinita.

GetHiLoSequenceSchema(IModel)

Restituisce lo schema da utilizzare per la sequenza hi-lo predefinita. UseHiLo(PropertyBuilder, String, String)

GetHiLoSequenceSchema(IReadOnlyModel)

Restituisce lo schema da utilizzare per la sequenza hi-lo predefinita. UseHiLo(PropertyBuilder, String, String)

GetIdentityIncrement(IModel)

Restituisce l'incremento dell'identità predefinito.

GetIdentityIncrement(IReadOnlyModel)

Restituisce l'incremento dell'identità predefinito.

GetIdentitySeed(IModel)

Restituisce il valore di inizializzazione identità predefinito.

GetIdentitySeed(IReadOnlyModel)

Restituisce il valore di inizializzazione identità predefinito.

GetPerformanceLevelSql(IModel)

Restituisce il livello di prestazioni del database.

GetPerformanceLevelSql(IReadOnlyModel)

Restituisce il livello di prestazioni del database.

GetSequenceNameSuffix(IReadOnlyModel)

Restituisce il suffisso da aggiungere al nome delle sequenze create automaticamente.

GetSequenceSchema(IReadOnlyModel)

Restituisce lo schema da utilizzare per la sequenza di generazione di valori predefinita. UseSequence(PropertyBuilder, String, String)

GetServiceTierSql(IModel)

Restituisce il livello di servizio del database.

GetServiceTierSql(IReadOnlyModel)

Restituisce il livello di servizio del database.

GetValueGenerationStrategy(IModel)

Restituisce l'oggetto SqlServerValueGenerationStrategy da utilizzare per le proprietà delle chiavi nel modello, a meno che la proprietà non abbia una strategia impostata in modo esplicito.

GetValueGenerationStrategy(IReadOnlyModel)

Restituisce l'oggetto SqlServerValueGenerationStrategy da utilizzare per le proprietà delle chiavi nel modello, a meno che la proprietà non abbia una strategia impostata in modo esplicito.

Si applica a