IModel Interfaccia
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.
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 derivato DbContext.
public interface IModel : Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable
public interface IModel : Microsoft.EntityFrameworkCore.Infrastructure.IAnnotatable, Microsoft.EntityFrameworkCore.Metadata.IReadOnlyModel
type IModel = interface
interface IAnnotatable
type IModel = interface
interface IReadOnlyModel
interface IReadOnlyAnnotatable
interface IAnnotatable
Public Interface IModel
Implements IAnnotatable
Public Interface IModel
Implements IAnnotatable, IReadOnlyModel
- Derivato
- Implementazioni
Commenti
La durata del servizio è Scoped. Ciò significa che ogni DbContext istanza userà la propria istanza del servizio. L'implementazione può dipendere da altri servizi registrati con qualsiasi durata. L'implementazione non deve essere thread-safe.
Per altre informazioni ed esempi, vedere Modellazione di tipi di entità e relazioni .
Proprietà
| Nome | Descrizione |
|---|---|
| Item[String] |
Ottiene il valore dell'annotazione con il nome specificato, restituendo |
| ModelDependencies |
Dipendenze del servizio di runtime. |
| 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 Entity Framework Core. (Ereditato da IReadOnlyModel) |
Metodi
| Nome | Descrizione |
|---|---|
| AddRuntimeAnnotation(String, Object) |
Aggiunge un'annotazione di runtime a questo oggetto. Genera un'eccezione se esiste già un'annotazione con il nome specificato. (Ereditato da IAnnotatable) |
| AnnotationsToDebugString(Int32) |
Ottiene la stringa di debug per tutte le annotazioni dichiarate nell'oggetto . (Ereditato da IReadOnlyAnnotatable) |
| FindAnnotation(String) |
Ottiene l'annotazione con il nome specificato, restituendo |
| FindEntityType(String, String, IEntityType) |
Ottiene il tipo di entità per il nome specificato, definendo il nome di navigazione e il tipo di entità che definisce. Restituisce |
| FindEntityType(String, String, IReadOnlyEntityType) |
Ottiene il tipo di entità per il nome di base specificato, definendo il nome di navigazione e il tipo di entità che definisce. Restituisce |
| FindEntityType(String) |
Ottiene l'entità con il nome specificato. Restituisce |
| FindEntityType(Type, String, IEntityType) |
Ottiene il tipo di entità per il nome specificato, definendo il nome di navigazione e il tipo di entità che definisce. Restituisce |
| FindEntityType(Type, String, IReadOnlyEntityType) |
Ottiene il tipo di entità per il tipo specificato, definendo il nome di navigazione e il tipo di entità che definisce. Restituisce |
| FindEntityType(Type) |
Ottiene l'entità che esegue il mapping della classe di entità specificata. Restituisce |
| FindEntityTypes(Type) |
Ottiene i tipi di entità corrispondenti al tipo specificato. |
| FindLeastDerivedEntityTypes(Type, Func<IReadOnlyEntityType,Boolean>) |
Restituisce i tipi di entità corrispondenti ai tipi meno derivati dall'oggetto specificato. |
| FindRuntimeAnnotation(String) |
Ottiene l'annotazione di runtime con il nome specificato, restituendo |
| FindRuntimeAnnotationValue(String) |
Ottiene il valore dell'annotazione di runtime con il nome specificato, restituendo |
| FindRuntimeEntityType(Type) |
Ottiene l'entità che esegue il mapping della classe di entità specificata, in cui la classe può essere un proxy derivato dal tipo di entità effettivo. Restituisce |
| FindTypeMappingConfiguration(Type) |
Trova la configurazione pre-convenzione per un determinato oggetto scalare Type. |
| GetAnnotation(String) |
Ottiene l'annotazione con il nome specificato, generando se non esiste. (Ereditato da IReadOnlyAnnotatable) |
| GetAnnotations() |
Ottiene tutte le annotazioni sull'oggetto corrente. (Ereditato da IReadOnlyAnnotatable) |
| GetChangeTrackingStrategy() |
Ottiene la strategia di rilevamento delle modifiche predefinita utilizzata per le entità nel modello. Questa strategia indica come il contesto rileva le modifiche alle proprietà per un'istanza di un tipo di entità. (Ereditato da IReadOnlyModel) |
| GetEmbeddedDiscriminatorName() |
Ottiene il nome da usare per le proprietà discriminatorie incorporate nei documenti JSON. Il valore predefinito è "$type". (Ereditato da IReadOnlyModel) |
| GetEntityTypes() |
Ottiene tutti i tipi di entità definiti nel modello. |
| GetModelDependencies() |
Ottiene le dipendenze del servizio di runtime. |
| 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 IAnnotatable) |
| GetProductVersion() |
Ottiene la versione dell'assembly EF Core usata per compilare questo modello. (Ereditato da IReadOnlyModel) |
| GetPropertyAccessMode() |
Ottiene l'oggetto PropertyAccessMode utilizzato per le proprietà dei tipi di entità in questo modello. (Ereditato da IReadOnlyModel) |
| GetRuntimeAnnotations() |
Ottiene tutte le annotazioni di runtime sull'oggetto corrente. (Ereditato da IAnnotatable) |
| GetTypeMappingConfigurations() |
Ottiene tutte le configurazioni pre-convenzione. |
| IsIndexerMethod(MethodInfo) |
Ottiene un valore che indica se l'oggetto specificato MethodInfo rappresenta un accesso dell'indicizzatore. |
| IsShared(Type) |
Ottiene un valore che indica se il tipo CLR viene utilizzato dalle entità di tipo condiviso nel modello. (Ereditato da IReadOnlyModel) |
| RemoveRuntimeAnnotation(String) |
Rimuove l'annotazione di runtime specificata da questo oggetto. (Ereditato da IAnnotatable) |
| SetRuntimeAnnotation(String, Object) |
Imposta l'annotazione di runtime archiviata nella chiave specificata. Sovrascrive l'annotazione esistente se esiste già un'annotazione con il nome specificato. (Ereditato da IAnnotatable) |
| ToDebugString(MetadataDebugStringOptions, Int32) |
Crea una rappresentazione leggibile dei metadati specificati. Avviso: non basarsi sul formato della stringa restituita. È progettato solo per il debug e può cambiare arbitrariamente tra le versioni. (Ereditato da IReadOnlyModel) |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| AnnotationsToDebugString(IAnnotatable, Int32) |
Ottiene la stringa di debug per tutte le annotazioni dichiarate nell'oggetto . |
| AreNamedDefaultConstraintsUsed(IReadOnlyModel) |
Restituisce il valore che indica se devono essere utilizzati vincoli predefiniti denominati. |
| 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. |
| FindEntityType(IModel, Type, String, IEntityType) |
Ottiene il tipo di entità per il tipo specificato, definendo il nome di navigazione e il tipo di entità che definisce. Restituisce |
| FindEntityType(IModel, Type) |
Obsoleti.
Ottiene l'entità che esegue il mapping della classe di entità specificata. Restituisce |
| FindFullTextCatalog(IModel, String) |
Trova un catalogo full-text nel modello o restituisce |
| FindFullTextCatalog(IReadOnlyModel, String) |
Trova un catalogo full-text nel modello o restituisce |
| FindRuntimeEntityType(IModel, Type) |
Ottiene l'entità che esegue il mapping della classe di entità specificata, in cui la classe può essere un proxy derivato dal tipo di entità effettivo. Restituisce |
| FindSequence(IModel, String, String) |
Trova una sequenza con il nome specificato. |
| FindSequence(IReadOnlyModel, String, String) |
Trova una sequenza con il nome specificato. |
| GetAnnotation(IAnnotatable, String) |
Ottiene l'annotazione con il nome specificato, generando se non esiste. |
| GetChangeTrackingStrategy(IModel) |
Ottiene la strategia di rilevamento delle modifiche predefinita utilizzata per le entità nel modello. Questa strategia indica come il contesto rileva le modifiche alle proprietà per un'istanza di un tipo di entità. |
| GetCollation(IModel) |
Restituisce le regole di confronto del database. |
| GetCollation(IReadOnlyModel) |
Restituisce le regole di confronto del database. |
| GetDatabaseMaxSize(IModel) |
Restituisce le dimensioni massime del database. |
| GetDatabaseMaxSize(IReadOnlyModel) |
Restituisce le dimensioni massime del database. |
| GetDbFunctions(IModel) |
Restituisce tutte le funzioni contenute nel modello. |
| GetDbFunctions(IReadOnlyModel) |
Restituisce tutte le funzioni contenute nel modello. |
| GetDefaultContainer(IModel) |
Restituisce il nome del contenitore predefinito. |
| GetDefaultContainer(IReadOnlyModel) |
Restituisce il nome del contenitore predefinito. |
| GetDefaultFullTextSearchLanguage(IReadOnlyModel) |
Restituisce la lingua predefinita per la ricerca full-text nell'ambito del database. |
| GetDefaultSchema(IModel) |
Restituisce lo schema predefinito da utilizzare per il modello o |
| GetDefaultSchema(IReadOnlyModel) |
Restituisce lo schema predefinito da utilizzare per il modello o |
| GetDiscriminatorInKey(IReadOnlyModel) |
Restituisce un valore che indica se il discriminante del tipo di entità deve essere incluso nel valore "id" JSON. Prima di EF Core 9, era sempre incluso. A partire da EF Core 9, non è incluso per impostazione predefinita. |
| GetEntityTypes(IModel, String) |
Obsoleti.
Ottiene i tipi di entità corrispondenti al nome specificato. |
| GetEntityTypes(IModel, Type) |
Obsoleti.
Ottiene i tipi di entità corrispondenti al tipo specificato. |
| GetFluentApiCalls(IModel, IAnnotationCodeGenerator) |
Ottiene le chiamate API Fluent per configurare un modello. |
| GetFullTextCatalogs(IModel) |
Ottiene tutti i cataloghi full-text definiti nel modello. |
| GetFullTextCatalogs(IReadOnlyModel) |
Ottiene tutti i cataloghi full-text definiti nel modello. |
| GetHasShadowIds(IReadOnlyModel) |
Restituisce un valore che indica se l'impostazione per la creazione sempre della proprietà "__id" può essere impostata dall'origine di configurazione corrente |
| GetHiLoSequenceName(IModel) |
Restituisce il nome da utilizzare per la sequenza di hi-lo predefinita. |
| GetHiLoSequenceName(IReadOnlyModel) |
Restituisce il nome da utilizzare per la sequenza di hi-lo predefinita. |
| GetHiLoSequenceSchema(IModel) |
Restituisce lo schema da utilizzare per la sequenza di hi-lo predefinita. UseHiLo(PropertyBuilder, String, String) |
| GetHiLoSequenceSchema(IReadOnlyModel) |
Restituisce lo schema da utilizzare per la sequenza di hi-lo predefinita. UseHiLo(PropertyBuilder, String, String) |
| GetIdentityIncrement(IModel) |
Restituisce l'incremento predefinito dell'identità. |
| GetIdentityIncrement(IReadOnlyModel) |
Restituisce l'incremento predefinito dell'identità. |
| GetIdentitySeed(IModel) |
Restituisce il valore di inizializzazione dell'identità predefinito. |
| GetIdentitySeed(IReadOnlyModel) |
Restituisce il valore di inizializzazione dell'identità predefinito. |
| GetMaxIdentifierLength(IModel) |
Restituisce la lunghezza massima consentita per gli identificatori di archivio. |
| GetMaxIdentifierLength(IReadOnlyModel) |
Restituisce la lunghezza massima consentita per gli identificatori di archivio. |
| GetPerformanceLevelSql(IModel) |
Restituisce il livello di prestazioni del database. |
| GetPerformanceLevelSql(IReadOnlyModel) |
Restituisce il livello di prestazioni del database. |
| GetProductVersion(IModel) |
Ottiene la versione dell'assembly EF Core usata per compilare questo modello |
| GetPropertyAccessMode(IModel) |
Ottiene l'oggetto PropertyAccessMode utilizzato per le proprietà dei tipi di entità in questo modello. Si noti che i singoli tipi di entità possono eseguire l'override di questa modalità di accesso e le singole proprietà dei tipi di entità possono eseguire l'override della modalità di accesso impostata sul tipo di entità. Il valore restituito qui verrà utilizzato per qualsiasi proprietà per cui non è stato specificato alcun override. |
| GetRelationalDependencies(IModel, String) |
Restituisce le dipendenze del servizio relazionale. |
| GetRelationalModel(IModel) |
Restituisce il modello di database. |
| GetSequenceNameSuffix(IReadOnlyModel) |
Restituisce il suffisso da aggiungere al nome delle sequenze create automaticamente. |
| GetSequences(IModel) |
Restituisce tutte le sequenze contenute nel modello. |
| GetSequences(IReadOnlyModel) |
Restituisce tutte le sequenze contenute nel modello. |
| 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. |
| GetThroughput(IReadOnlyModel) |
Restituisce la velocità effettiva con provisioning nell'ambito 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. |
| HasEntityTypeWithDefiningNavigation(IModel, String) |
Obsoleti.
Ottiene un valore che indica se il modello contiene un tipo di entità corrispondente con una struttura di spostamento che definisce. |
| HasEntityTypeWithDefiningNavigation(IModel, Type) |
Obsoleti.
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. |
| Relational(IModel) |
Ottiene i metadati specifici del database relazionale per un modello. |
| Scaffolding(IModel) |
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 derivato DbContext. |
| Sqlite(IModel) |
Ottiene i metadati specifici di SQLite per un modello. |
| SqlServer(IModel) |
Ottiene il SQL Server metadati specifici per un modello. |
| ToDebugString(IModel, MetadataDebugStringOptions, Int32) |
Crea una rappresentazione leggibile dei metadati specificati. Avviso: non basarsi sul formato della stringa restituita. È progettato solo per il debug e può cambiare arbitrariamente tra le versioni. |