Question

J'ai eu une fenêtre de test hôte (50 Mo) qui a été au service de mon application Web ASP.NET, il a travaillé presque bien, mais après avoir été mis à niveau à 100 Mo, je me suis souvent des erreurs de délai d'attente du serveur SQL lorsque vous essayez de SQL connexion à distance serveur à partir de Visual studio (par exemple dans le développement local de mon site), j'ai essayé d'augmenter manuellement délai d'attente des commandes SQL, et je pense qu'il a été en quelque sorte résolu, mais je pense que mon action ne va pas, bien sûr, mes téléspectateurs du site ont pas de problème dans la visualisation les pages que tout fonctionne bien pour les utilisateurs finaux, je ne ai eu des problèmes tout en développant le site et accéder à ma base de données à distance via VS2010, dois-je vraiment envisager de plus en plus délai d'attente? comment puis-je augmenter globalement le délai d'attente? dois-je définir la propriété CommandTimeout pour chaque commande SQL? est-il possible de l'augmenter dans la chaîne de connexion? Bien sûr, comme je suis actuellement en utilisant un hôte partagé, je ne peux pas modifier les paramètres de studio de gestion de serveur SQL

S'il vous plaît me guider sur ce problème que je n'ai pas un bon sentiment en ce qui concerne la propriété de délai d'attente! merci

Était-ce utile?

La solution

Je ne pense pas qu'il y ait un moyen facile de définir ce à l'échelle mondiale - par exemple dans la chaîne de connexion ou de quelque chose.

Qu'est-ce que vous pourriez faire (mais cela nécessite votre code de travail de cette façon) est mis votre délai d'attente de commande dans la configuration:

<configuration>
   <appSettings>
      <add name="CommandTimeout" value="120" />
   </appSettings>
</configuration>

puis dans votre code, lisez la valeur de la configuration et de l'utiliser pour vos classes SqlCommand:

int commandTimeout = Convert.ToInt32(ConfigurationManager.AppSettings["CommandTimeout"]);

using(SqlCommand cmd = new SqlCommand(..(your SQL statement)..., connection))
{
    cmd.CommandTimeout = commandTimeout;
}

Avec cela, vous pouvez au moins modifier le délai d'attente sans avoir à changer votre code.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top