Une collection chargée paresseuse dans NHibernate devrait-elle jamais me donner une exception NullReferenceException? Je reçois une exception dans une méthode comme suit:NHibernate - Lazy Loaded Collection
public void Test(ISession session, int id)
{
var entity = session.Load<MyEntity>(id);
entity.LazyLoadedCollection.Add(SomeItem);
}
L'appel à LazyLoadedCollection est de lancer. Mon mappage ressemble à:
<bag lazy="true" table="MyTable">
<key>
<column name="LazyLoadedCollection" />
</key>
<many-to-many class="LazyLoadedItem">
<column name="LazyLoadedItemId" />
</many-to-many>
</bag>
Est-ce le comportement attendu dans NHibernate?
Comme je l'ai dit dans la publication, l'exception provient de l'appel de entity.LazyLoadedCollection.Add. Je ne comprends vraiment pas pourquoi le code suivant l'exception est important. J'obtiens une instance de mon entité appelant Session.Load et essayant d'ajouter un objet à une propriété qui est une collection qui est paresseuse chargée. Pouvez-vous me dire quelle partie de ce n'est pas clair? –
Le code de la classe d'entité. Je suis sûr que l'exception n'est pas causée par NHibernate mais par quelque chose d'autre que je ne vois pas dans votre exemple de code. Que se passera-t-il quand vous faites une nouvelle Entité(). LazyLoadedCollection.Add() sans aucun mappage ou référence à NHibernate? Je suppose la même chose, mais je ne sais pas comment vous l'avez mis en œuvre. – Paco