J'écris une application Web à l'aide de Castle ActiveRecord, et je reçois cette exception chaque fois que j'essaie d'accéder à une liste d'objets connexes chargés paresseusement. Voici mon code:Aide avec l'exception ActiveRecord "Impossible d'initialiser paresseusement une collection - aucune session"
using(new SessionScope())
{
foreach (var field in eventObj.RegistrationFields)
{
//Do something with the field here...
}
}
La propriété RegistrationFields ressemble à ceci:
[HasMany(Inverse = true, Lazy = true)]
public IList<EventRegistrationField> RegistrationFields { get; set; }
L'exception se produit lorsque les "eventObj.RegistrationFields" est accessible pour la boucle foreach. J'ai également veillé à définir l'attribut isweb = "true" dans mes paramètres de configuration activeRecord. Est-ce que quelqu'un sait pourquoi cela arriverait? Voici ma config:
<connectionStrings>
<add name="main" connectionString="Data Source=localhost\SQLEXPRESS;Initial Catalog=EventScheduler;Integrated Security=SSPI"/>
</connectionStrings>
<activerecord isWeb="true">
<config>
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver"/>
<add key="hibernate.dialect" value="NHibernate.Dialect.MsSql2005Dialect"/>
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider"/>
<add key="hibernate.connection.connection_string_name" value="main"/>
</config>
</activerecord>