J'expérimente avec la conversion de mes fichiers de mappage NHibernate à FluentNHibernate. Cependant, je suis déjà coincé sur ma première tentative. Voici un fragment d'un fichier de mappage XML:Comment mapper un champ d'identité privée dans FluentNHibernate?
<class name="Contact" table="tblXContacts">
<id name="_id" column="ContactID" unsaved-value="0" access="field">
<generator class="identity"/>
</id>
La langue par défaut de parler couramment FluentNHibernate veut me forcer à utiliser les propriétés. Bien que j'expose une propriété ContactId de type sécurité à utiliser dans le code, je n'ai jamais réussi à obtenir que NHibernate accepte ce type de valeur comme Id, donc ma propriété publique construit un nouveau type de valeur à la volée. J'ai trouvé que dans mon ClassInfo FluentNHibernate, je peux accéder à l'IdMapping et manipuler ses propriétés directement (par exemple Name, Access) mais il y a beaucoup moins de documentation sur la façon de faire les choses en dehors des constructeurs courants. Par exemple, comment puis-je définir la colonne? Il y a "AddColumn (...)", mais il veut un ColumnMapping qui est où je commence à me perdre.
Ceci s'applique également aux champs. La page wiki n'a tout simplement pas été mise à jour pour refléter cela. –
Malheureusement, même si cela décrit comment gérer les propriétés privées, cela ne semble pas couvrir la gestion des champs. – Trinition
Avez-vous essayé d'utiliser Reveal avec votre domaine? Essayez-le, si cela ne fonctionne pas, faites de votre domaine une propriété privée – BenCr