Obtenir cela chaque fois que je tente de créer une entité particulière ... Je veux juste savoir comment je devrais aller trouver la cause. J'utilise la mise en correspondance automatique de NHibernate, donc peut-être n'ai-je pas défini une convention de manière appropriée et/ou besoin de redéfinir quelque chose dans un ou plusieurs fichiers de mappage. Je suis passé par un certain nombre de messages sur le web concernant ce problème et j'ai du mal à comprendre exactement pourquoi cela se passe dans mon cas.Comment résoudre "La mise à jour par lots a renvoyé un nombre de lignes inattendu à partir de la mise à jour, nombre de lignes réel: 0; attendu: 1" problème?
L'objet que je sauvegarde est assez simple. C'est un objet "Personne" qui référence une entité "Société" et possède une collection d'entités "Adresse". Les mises à jour fonctionnent correctement sur les objets Person existants qui se trouvent déjà dans la base de données.
Suggestions?
Merci de
Yup. Dans mon cas, j'utilise le framework SharpArchitecture qui met par défaut les valeurs non sauvegardées pour le champ "Id" à zéro ... au lieu de -1 comme je suis habitué à l'utiliser depuis des années. J'ai essayé de surcharger ceci dans ma configuration de mappage automatique et même dans une classe de mappage personnalisée ... mais la définit toujours à 0. – wgpubs
Vous avez donc essayé ceci: Id (a => a.Id) .UnsavedValue (0); Si vous avez encore des problèmes et que vous voulez que je jette un coup d'œil, ajoutez le SQL résultant et votre mapping dans votre question. – Iain
J'ai rencontré ce problème car un objet nul était ajouté à une collection, puis une sauvegarde était en cours. – m4tt1mus