Dans une application Web, la session est uniquement disponible dans le thread en cours.Requêtes asynchrones dans une application Web, à l'aide de NHibernate
Quelqu'un a-t-il des conseils pour exécuter des requêtes via NHibernate dans un nouveau thread asynchrone?
Par exemple, comment pourrais-je faire quelque chose comme ce travail:
public void Page_Load()
{
ThreadPool.QueueUserWorkItem(state => FooBarRepository.Save(new FooBar()));
}
Pourquoi ça ne marche pas? – Paco
J'ai le même problème. Le NHibernate ISession est stocké dans le HttpContext qui n'est pas disponible dans les méthodes asynchrones. Y a-t-il un moyen de contourner ceci? –
Pourquoi stockez-vous la session dans HttpContext si vous voulez qu'elle vive plus longtemps que HttpContext? – Paco