Mises à jour d'entités avec erreur de requête de définition
Lors de la tentative de mise à jour d'entités dans Entity Framework 1, une erreur peut se produire si l'ensemble d'entités ciblé a un DefiningQuery mais il lui manque un élément dans son . Ce message d'erreur indique :
Unable to update the EntitySet - because it has a DefiningQuery and no <UpdateFunction> element exists in the <ModificationFunctionMapping> element to support the current operation.
Copier après la connexion
Causes possibles
L'erreur survient généralement pour l'une des raisons suivantes :
-
Mappage de la vue de base de données : L'ensemble d'entités est mappé à une base de données vue.
-
Requêtes de base de données personnalisées : Une requête de base de données personnalisée est utilisée pour générer l'ensemble d'entités.
-
Clé primaire manquante : La table de base de données sous-jacente l'entité n'a pas de numéro principal clé.
Résolution
-
Vérifiez le mappage de l'ensemble d'entités : Assurez-vous que l'ensemble d'entités est correctement mappé. S'il est mappé à une vue ou à une requête personnalisée, une fonction doit être fourni dans le champ pour prendre en charge les mises à jour.
-
Vérifier la clé primaire : Confirmez que la table de base de données associée à l'entité possède une clé primaire. Sinon, ajoutez-en un au tableau.
-
Mettre à jour le concepteur Entity Framework : Après avoir corrigé le mappage ou la structure de la table, vous devrez peut-être mettre à jour le concepteur Entity Framework ou recréer l'entité pour résoudre le problème. .
Remarque : Le simple fait de supprimer et de rajouter l'entité peut également résoudre le problème, mais il est important de s'attaquer à la cause sous-jacente pour éviter les récidives.
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!