3

Comment augmenter le délai d'attente dans NHibernate Linq To Sql?Définition du délai d'expiration de la commande Linq to NHibernate ADO

Ce n'est pas le délai de connexion, mais le délai d'expiration de la commande ado.

using (ISession session = NHibernateHelper.OpenSession(NHibernateHelper.Databases.CarrierCDR)) 
    using (session.BeginTransaction(IsolationLevel.ReadUncommitted)) 
    { 
    lCdrs = (from verizon in session.Linq<Domain.Verizon>() 
      where verizon.Research == true 
      && verizon.ReferenceTable == null 
      orderby verizon.CallBillingDate descending 
       select verizon).ToList(); 
} 
+0

Est-ce que quelqu'un s'il vous plaît modifier le titre de cette question à quelque chose de plus descriptif. –

Répondre

0

La seule mention d'un paramètre de délai d'attente de commande dans l'ensemble du code source de Fluent NHibernate est dans un objet FirebirdConfiguration. Ce qui configure l'application pour la base de données firebird, que vous n'utilisez probablement pas. Je suggère de jouer avec vos objets de configuration et de consulter la référence de chaîne de connexion de votre base de données.

La fonction Raw dans le PersistenceConfiguration peut vous permettre d'accéder aux propriétés que vous recherchez, comme FirebirdConfiguration, vous pouvez ajouter la ligne Raw("command_timeout", "444");, à l'endroit où votre NHibernate configure.

1

si vous configurez votre session NHibernate avec le web.config que vous pouvez ajouter à la configuration:

<add key="hibernate.command_timeout" value="0" /> 
+2

Le problème est que cette propriété n'est pas utilisée pour la commande réelle lorsque la requête Linq est exécutée. Il expire toujours après ~ 30 sec. – Groo

Questions connexes