Maison > développement back-end > C++ > Pourquoi Entity Framework lance-t-il « Le type d'entité ne fait pas partie du modèle pour le contexte actuel » et comment puis-je y remédier ?

Pourquoi Entity Framework lance-t-il « Le type d'entité ne fait pas partie du modèle pour le contexte actuel » et comment puis-je y remédier ?

Mary-Kate Olsen
Libérer: 2025-01-01 00:19:10
original
166 Les gens l'ont consulté

Why Does Entity Framework Throw

Erreur de mappage de modèle dans Entity Framework

Lors de l'utilisation de l'approche Code-First dans Entity Framework, il est crucial de s'assurer que le modèle est correctement mappé à la base de données. Une erreur courante rencontrée est "Le type d'entité ne fait pas partie du modèle pour le contexte actuel."

Cette erreur se produit généralement lorsque DbContext n'est pas conscient du type d'entité en cours d'accès ou de modification. Pour résoudre ce problème, vous devez mapper explicitement l'entité à la table de base de données dans DbContext.

Pour le code fourni, la solution réside dans le remplacement de la méthode OnModelCreating dans le DimensionWebDbContext :

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    modelBuilder.Entity<Estate>().ToTable("Estate");
}
Copier après la connexion
En spécifiant le nom de la table dans le

ToTable, vous indiquez à DbContext que l'entité Estate doit être mappée à la table "Estate" dans la base de données.

Sans ce mappage explicite, Entity Framework suppose que l'entité est mappée à une table portant le même nom que son nom de classe (

Estate dans ce cas). Étant donné que la base de données n'a pas encore été initialisée, elle ne contient pas de table portant ce nom, ce qui entraîne l'erreur.

En mappant correctement l'entité, Entity Framework peut identifier la table avec laquelle interagir, résolvant l'erreur et permettant l'insertion et la modification d'entités du référentiel.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal