Y a-t-il un moyen de commencer avec un modèle non-résonné
var m = new Model() { ID = 1 }; m.Name = "test"; //Model also has .LastName and .Age
3 Réponses :
http://www.hibernate.org/hib_docs/nhibernate/html /mapping.html
mise à jour dynamique (facultatif, par défaut à FAUX): Spécifie que la mise à jour SQL devrait être généré au moment de l'exécution et ne contient que ces colonnes dont Les valeurs ont changé. P> blockQuote>
Placez la mise à jour dynamique de la classe dans le HBM. p>
xxx pré> p>
Je ne suis pas sûr à ce moment-là si .Update frappe la base de données, je ne le veux pas aussi.
Essayez-le. Très probablement, Mettre à jour la DOE ne frappe pas la base de données immédiatement. Il met simplement le modèle à la session et la marque aussi sale qu'elle sera stockée de toute façon.
La mise à jour dynamique ne fonctionne pas dans ce cas, car NH ne dispose pas des valeurs d'origine et ne sait pas ce qui a changé. Voir cette question: Stackoverflow.com/questions/1243390/...
Si le modèle dispose d'autres propriétés, vous devez les initialiser avec la valeur d'origine dans la base de données, à moins qu'ils ne soient définis sur NULL. P>
Vous pouvez utiliser Opérations de mise à jour de HQL forte>; Je ne l'ai jamais essayé moi-même. P>
Vous pouvez également utiliser une déclaration généralement, cette optimisation n'est pas nécessaire. Il existe des cas vraiment rares dans lesquels vous devez éviter de sélectionner les données. Ainsi, la rédaction de ces déclarations SQL ne sont qu'une perte de temps. Vous utilisez un orj, cela signifie: écrire votre objet logiciel orienté! Sauf si vous n'en tirerez pas beaucoup d'avantages. P> Mettre à jour le nom de modèle de modèle ... code>"). P>
Qu'est-ce que Stefan dit ressemble à ce dont vous avez besoin. Sachez que c'est vraiment un cas d'Edge et que vous devriez être satisfait de charger pleinement votre entité à moins que vous n'ayez des problèmes ultra-performants. P>
Si vous ne voulez tout simplement pas toucher la base de données - essayez d'utiliser la mise en cache - l'entité cache est très simple et efficace. P>
Si votre entité est une énorme - c'est-à-dire, c'est un blob ou quelque chose - pensez à le diviser en deux (avec plusieurs à un afin que vous puissiez utiliser le chargement paresseux). P>