IModel Interface

Définition

Métadonnées relatives à la forme des entités, aux relations entre elles et à la façon dont elles sont mappées à la base de données. Un modèle est généralement créé en remplaçant la OnModelCreating(ModelBuilder) méthode sur un dérivé 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
Dérivé
Implémente

Remarques

La durée de vie du service est Scoped. Cela signifie que chaque DbContext instance utilisera ses propres instance de ce service. L’implémentation peut dépendre d’autres services inscrits avec n’importe quelle durée de vie. L’implémentation n’a pas besoin d’être thread-safe.

Pour plus d’informations et d’exemples, consultez Modélisation des types d’entités et des relations .

Propriétés

Item[String]

Obtient la valeur de l’annotation avec le nom donné, en retournant null si elle n’existe pas.

(Hérité de IReadOnlyAnnotatable)
ModelDependencies

Dépendances du service runtime.

ModelId

Il s’agit d’une API interne qui prend en charge l’infrastructure Entity Framework Core et qui n’est pas soumise aux mêmes normes de compatibilité que les API publiques. Il peut être modifié ou supprimé sans préavis dans n’importe quelle version. Vous devez uniquement l’utiliser directement dans votre code avec une extrême prudence et sachant que cela peut entraîner des échecs d’application lors de la mise à jour vers une nouvelle version d’Entity Framework Core.

(Hérité de IReadOnlyModel)

Méthodes

AddRuntimeAnnotation(String, Object)

Ajoute une annotation d’exécution à cet objet. Lève si une annotation portant le nom spécifié existe déjà.

(Hérité de IAnnotatable)
AnnotationsToDebugString(Int32)

Obtient la chaîne de débogage pour toutes les annotations déclarées sur l’objet.

(Hérité de IReadOnlyAnnotatable)
FindAnnotation(String)

Obtient l’annotation avec le nom donné, retournée null si elle n’existe pas.

(Hérité de IReadOnlyAnnotatable)
FindEntityType(String)

Obtient l’entité avec le nom donné. Retourne null si aucun type d’entité portant le nom donné n’est trouvé ou si le type CLR donné est utilisé par le type d’entité de type partagé ou si le type d’entité a une navigation de définition.

FindEntityType(String, String, IEntityType)

Obtient le type d’entité pour le nom donné, définissant le nom de navigation et le type d’entité définissant. Retourne null si aucun type d’entité correspondant n’est trouvé.

FindEntityType(String, String, IReadOnlyEntityType)

Obtient le type d’entité pour le nom de base donné, définissant le nom de navigation et le type d’entité définissant. Retourne null si aucun type d’entité correspondant n’est trouvé.

(Hérité de IReadOnlyModel)
FindEntityType(Type)

Obtient l’entité qui mappe la classe d’entité donnée. Retourne null si aucun type d’entité avec le type CLR donné n’est trouvé ou si le type CLR donné est utilisé par le type d’entité de type partagé ou si le type d’entité a une navigation de définition.

FindEntityType(Type, String, IEntityType)

Obtient le type d’entité pour le nom donné, définissant le nom de navigation et le type d’entité définissant. Retourne null si aucun type d’entité correspondant n’est trouvé.

FindEntityType(Type, String, IReadOnlyEntityType)

Obtient le type d’entité pour le type donné, définissant le nom de navigation et le type d’entité définissant. Retourne null si aucun type d’entité correspondant n’est trouvé.

(Hérité de IReadOnlyModel)
FindEntityTypes(Type)

Obtient les types d’entités correspondant au type donné.

FindLeastDerivedEntityTypes(Type, Func<IReadOnlyEntityType,Boolean>)

Retourne les types d’entités correspondant aux types les moins dérivés du donné.

FindRuntimeAnnotation(String)

Obtient l’annotation du runtime avec le nom donné, en retournant null si elle n’existe pas.

(Hérité de IAnnotatable)
FindRuntimeAnnotationValue(String)

Obtient la valeur de l’annotation runtime avec le nom donné, en retournant null si elle n’existe pas.

(Hérité de IAnnotatable)
FindRuntimeEntityType(Type)

Obtient l’entité qui mappe la classe d’entité donnée, où la classe peut être un proxy dérivé du type d’entité réel. Retourne null si aucun type d’entité avec le type CLR donné n’est trouvé ou si le type CLR donné est utilisé par le type d’entité de type partagé ou si le type d’entité a une navigation de définition.

FindTypeMappingConfiguration(Type)

Recherche la configuration de pré-convention pour un scalaire Typedonné .

GetAnnotation(String)

Obtient l’annotation avec le nom donné, en lisant si elle n’existe pas.

(Hérité de IReadOnlyAnnotatable)
GetAnnotations()

Obtient toutes les annotations sur l’objet actif.

(Hérité de IReadOnlyAnnotatable)
GetChangeTrackingStrategy()

Obtient la stratégie de suivi des modifications par défaut utilisée pour les entités du modèle. Cette stratégie indique comment le contexte détecte les modifications apportées aux propriétés d’un instance d’un type d’entité.

(Hérité de IReadOnlyModel)
GetEntityTypes()

Obtient tous les types d’entités définis dans le modèle.

GetModelDependencies()

Obtient les dépendances du service runtime.

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

Obtient la valeur de l’annotation runtime avec le nom donné, en l’ajoutant si elle n’en existe pas.

(Hérité de IAnnotatable)
GetProductVersion()

Obtient la version de l’assembly EF Core utilisée pour générer ce modèle.

(Hérité de IReadOnlyModel)
GetPropertyAccessMode()

Obtient le PropertyAccessMode qui est utilisé pour les propriétés des types d’entités dans ce modèle.

(Hérité de IReadOnlyModel)
GetRuntimeAnnotations()

Obtient toutes les annotations d’exécution sur l’objet actif.

(Hérité de IAnnotatable)
GetTypeMappingConfigurations()

Obtient toutes les configurations pré-convention.

IsIndexerMethod(MethodInfo)

Obtient une valeur indiquant si le donné MethodInfo représente un accès d’indexeur.

IsShared(Type)

Obtient une valeur indiquant si le type CLR est utilisé par les entités de type partagé dans le modèle.

(Hérité de IReadOnlyModel)
RemoveRuntimeAnnotation(String)

Supprime l’annotation d’exécution donnée de cet objet.

(Hérité de IAnnotatable)
SetRuntimeAnnotation(String, Object)

Définit l’annotation d’exécution stockée sous la clé donnée. Remplace l’annotation existante si une annotation portant le nom spécifié existe déjà.

(Hérité de IAnnotatable)
ToDebugString(MetadataDebugStringOptions, Int32)

Crée une représentation lisible par l’homme des métadonnées données.

Avertissement : ne vous appuyez pas sur le format de la chaîne retournée. Il est conçu pour le débogage uniquement et peut changer arbitrairement d’une version à l’autre.

(Hérité de IReadOnlyModel)

Méthodes d’extension

GetDefaultContainer(IModel)

Retourne le nom du conteneur par défaut.

GetDefaultContainer(IReadOnlyModel)

Retourne le nom du conteneur par défaut.

GetThroughput(IReadOnlyModel)

Retourne le débit provisionné à l’étendue de la base de données.

AnnotationsToDebugString(IAnnotatable, Int32)

Obtient la chaîne de débogage pour toutes les annotations déclarées sur l’objet.

GetAnnotation(IAnnotatable, String)

Obtient l’annotation avec le nom donné, en lisant si elle n’existe pas.

GetRelationalDependencies(IModel, String)

Retourne les dépendances du service relationnel.

Scaffolding(IModel)

Métadonnées relatives à la forme des entités, aux relations entre elles et à la façon dont elles sont mappées à la base de données. Un modèle est généralement créé en remplaçant la OnModelCreating(ModelBuilder) méthode sur un dérivé DbContext.

FindEntityType(IModel, Type)
Obsolète..

Obtient l’entité qui mappe la classe d’entité donnée. Retourne null si aucun type d’entité avec le type CLR donné n’est trouvé ou si le type CLR donné est utilisé par le type d’entité de type partagé ou si le type d’entité a une navigation de définition.

FindEntityType(IModel, Type, String, IEntityType)

Obtient le type d’entité pour le type donné, définissant le nom de navigation et le type d’entité définissant. Retourne null si aucun type d’entité correspondant n’est trouvé.

FindRuntimeEntityType(IModel, Type)

Obtient l’entité qui mappe la classe d’entité donnée, où la classe peut être un proxy dérivé du type d’entité réel. Retourne null si aucun type d’entité avec le type CLR donné n’est trouvé ou si le type CLR donné est utilisé par le type d’entité de type partagé ou si le type d’entité a une navigation de définition.

GetChangeTrackingStrategy(IModel)

Obtient la stratégie de suivi des modifications par défaut utilisée pour les entités du modèle. Cette stratégie indique comment le contexte détecte les modifications apportées aux propriétés d’un instance d’un type d’entité.

GetEntityTypes(IModel, String)
Obsolète..

Obtient les types d’entités correspondant au nom donné.

GetEntityTypes(IModel, Type)
Obsolète..

Obtient les types d’entités correspondant au type donné.

GetProductVersion(IModel)

Obtient la version de l’assembly EF Core utilisée pour générer ce modèle

GetPropertyAccessMode(IModel)

Obtient le PropertyAccessMode qui est utilisé pour les propriétés des types d’entités dans ce modèle.

Notez que les types d’entités individuels peuvent remplacer ce mode d’accès et que les propriétés individuelles des types d’entités peuvent remplacer le mode d’accès défini sur le type d’entité. La valeur retournée ici sera utilisée pour toute propriété pour laquelle aucune substitution n’a été spécifiée.

HasEntityTypeWithDefiningNavigation(IModel, String)
Obsolète..

Obtient une valeur indiquant si le modèle contient un type d’entité correspondant avec une navigation définissante.

HasEntityTypeWithDefiningNavigation(IModel, Type)
Obsolète..

Obtient une valeur indiquant si le modèle contient un type d’entité correspondant avec une navigation définissante.

IsIndexerMethod(IModel, MethodInfo)

Obtient une valeur indiquant si l’objet MethodInfo donné reprenait l’accès d’un indexeur.

IsShared(IModel, Type)

Obtient si le type CLR est utilisé par les entités de type partagé dans le modèle.

ToDebugString(IModel, MetadataDebugStringOptions, Int32)

Crée une représentation lisible par l’homme des métadonnées données.

Avertissement : ne vous appuyez pas sur le format de la chaîne retournée. Il est conçu pour le débogage uniquement et peut changer arbitrairement d’une version à l’autre.

Relational(IModel)

Obtient les métadonnées spécifiques à la base de données relationnelle d’un modèle.

FindDbFunction(IModel, MethodInfo)

Recherche une fonction qui est mappée à la méthode représentée par le donné MethodInfo.

FindDbFunction(IModel, String)

Recherche une fonction qui est mappée à la méthode représentée par le nom donné.

FindDbFunction(IReadOnlyModel, MethodInfo)

Recherche une fonction qui est mappée à la méthode représentée par le donné MethodInfo.

FindDbFunction(IReadOnlyModel, String)

Recherche une fonction qui est mappée à la méthode représentée par le nom donné.

FindSequence(IModel, String, String)

Recherche une séquence avec le nom donné.

FindSequence(IReadOnlyModel, String, String)

Recherche une séquence avec le nom donné.

GetCollation(IModel)

Retourne le classement de la base de données.

GetCollation(IReadOnlyModel)

Retourne le classement de la base de données.

GetDbFunctions(IModel)

Retourne toutes les fonctions contenues dans le modèle.

GetDbFunctions(IReadOnlyModel)

Retourne toutes les fonctions contenues dans le modèle.

GetDefaultSchema(IModel)

Retourne le schéma par défaut à utiliser pour le modèle, ou null si aucun n’a été défini.

GetDefaultSchema(IReadOnlyModel)

Retourne le schéma par défaut à utiliser pour le modèle, ou null si aucun n’a été défini.

GetMaxIdentifierLength(IModel)

Retourne la longueur maximale autorisée pour les identificateurs de magasin.

GetMaxIdentifierLength(IReadOnlyModel)

Retourne la longueur maximale autorisée pour les identificateurs de magasin.

GetRelationalModel(IModel)

Retourne le modèle de base de données.

GetSequences(IModel)

Retourne toutes les séquences contenues dans le modèle.

GetSequences(IReadOnlyModel)

Retourne toutes les séquences contenues dans le modèle.

GetFluentApiCalls(IModel, IAnnotationCodeGenerator)

Obtient les appels d’API Fluent pour configurer un modèle.

Sqlite(IModel)

Obtient les métadonnées spécifiques SQLite pour un modèle.

SqlServer(IModel)

Obtient la SQL Server métadonnées spécifiques d’un modèle.

GetDatabaseMaxSize(IModel)

Retourne la taille maximale de la base de données.

GetDatabaseMaxSize(IReadOnlyModel)

Retourne la taille maximale de la base de données.

GetHiLoSequenceName(IModel)

Retourne le nom à utiliser pour la séquence hi-lo par défaut.

GetHiLoSequenceName(IReadOnlyModel)

Retourne le nom à utiliser pour la séquence hi-lo par défaut.

GetHiLoSequenceSchema(IModel)

Retourne le schéma à utiliser pour la séquence hi-lo par défaut. UseHiLo(PropertyBuilder, String, String)

GetHiLoSequenceSchema(IReadOnlyModel)

Retourne le schéma à utiliser pour la séquence hi-lo par défaut. UseHiLo(PropertyBuilder, String, String)

GetIdentityIncrement(IModel)

Retourne l’incrément d’identité par défaut.

GetIdentityIncrement(IReadOnlyModel)

Retourne l’incrément d’identité par défaut.

GetIdentitySeed(IModel)

Retourne la valeur initiale d’identité par défaut.

GetIdentitySeed(IReadOnlyModel)

Retourne la valeur initiale d’identité par défaut.

GetPerformanceLevelSql(IModel)

Retourne le niveau de performance de la base de données.

GetPerformanceLevelSql(IReadOnlyModel)

Retourne le niveau de performance de la base de données.

GetSequenceNameSuffix(IReadOnlyModel)

Retourne le suffixe à ajouter au nom des séquences créées automatiquement.

GetSequenceSchema(IReadOnlyModel)

Retourne le schéma à utiliser pour la séquence de génération de valeur par défaut. UseSequence(PropertyBuilder, String, String)

GetServiceTierSql(IModel)

Retourne le niveau de service de la base de données.

GetServiceTierSql(IReadOnlyModel)

Retourne le niveau de service de la base de données.

GetValueGenerationStrategy(IModel)

Retourne le SqlServerValueGenerationStrategy à utiliser pour les propriétés des clés dans le modèle, sauf si la propriété a une stratégie définie explicitement.

GetValueGenerationStrategy(IReadOnlyModel)

Retourne le SqlServerValueGenerationStrategy à utiliser pour les propriétés des clés dans le modèle, sauf si la propriété a une stratégie définie explicitement.

S’applique à