IModel Interfaccia

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 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 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 .

Proprietà

Item[String]

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

(Ereditato da IReadOnlyAnnotatable)
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 di Entity Framework Core.

(Ereditato da IReadOnlyModel)

Metodi

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 null se non esiste.

(Ereditato da IReadOnlyAnnotatable)
FindEntityType(String)

Ottiene l'entità con il nome specificato. Restituisce null se non viene trovato alcun tipo di entità con il nome 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.

FindEntityType(String, String, IEntityType)

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

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à di definizione. Restituisce null se non viene trovato alcun tipo di entità corrispondente.

(Ereditato da 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 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.

FindEntityType(Type, String, IEntityType)

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

FindEntityType(Type, String, IReadOnlyEntityType)

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

(Ereditato da IReadOnlyModel)
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 null se non esiste.

(Ereditato da IAnnotatable)
FindRuntimeAnnotationValue(String)

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

(Ereditato da IAnnotatable)
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 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.

FindTypeMappingConfiguration(Type)

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

GetAnnotation(String)

Ottiene l'annotazione con il nome specificato, che genera 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)
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 utilizzata 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 di pre-convenzione.

IsIndexerMethod(MethodInfo)

Ottiene un valore che indica se l'oggetto specificato MethodInfo rappresenta un accesso all'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 fare affidamento sul formato della stringa restituita. È progettato solo per il debug e può cambiare arbitrariamente tra le versioni.

(Ereditato da IReadOnlyModel)

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 .

GetAnnotation(IAnnotatable, String)

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

GetRelationalDependencies(IModel, String)

Restituisce le dipendenze del servizio relazionale.

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 oggetto derivato DbContext.

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.

FindEntityType(IModel, Type, String, IEntityType)

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

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 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.

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à.

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

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.

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.

Relational(IModel)

Ottiene i metadati specifici del database relazionale per un modello.

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.

Sqlite(IModel)

Ottiene i metadati specifici di SQLite per un modello.

SqlServer(IModel)

Ottiene il SQL Server metadati specifici per 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