Est-il possible de configurer NHibernate pour charger/persister une propriété non publique d'une classe? Par exemple, je peux avoir une classe Item comme suit.NHibernate peut-il définir des propriétés non publiques?
public class Item
{
public int ItemID {get; set;}
public string Name{get; set;}
}
Avec la mise en correspondance suivante:
<class name="RCL.Item" table="Items">
<id name="ItemID" type="Int32" column="ItemID">
<generator class="native"/>
</id>
<property name="Author" />
</class>
Cependant, je ne veux vraiment pas les consommateurs de ma classe d'objet pour être en mesure de modifier le champ ItemID. Puis-je restreindre l'accès à l'accesseur set de ItemID? Si oui, que dois-je faire? Privé, protégé, interne, protégé interne?
Humm, ok qui était stupide facile. Mais comment NHibernate peut-elle voir mes accesseurs privés? –
Utilisation de la réflexion – gcores
Je reçois cette erreur lorsque la propriété est interne. Les types suivants ne peuvent pas être utilisés comme proxy: Elément: la méthode get_ItemID doit être 'public/protected virtual' ou 'protected internal virtual' –