2011-08-03 4 views
1

Nous avons une application Windows Forms VB.Net développée en interne qui perd les connexions individuelles des utilisateurs à la base de données SQL Server 2008 R2.Une erreur de niveau de transport s'est produite lors de l'envoi de la requête au serveur

Le message en gras ci-dessous est ce qui apparaît.

Une erreur de niveau de transport s'est produite lors de l'envoi de la demande au serveur. (fournisseur: fournisseur TCP, erreur: 0 - Une connexion existante a été fermée de force par l'hôte distant.)

J'ai examiné de nombreux articles de Microsoft et d'autres, mais je n'ai pas pu identifier le problème.

Parfois, il se produit lorsque l'utilisateur a été loin de l'application ouverte pendant une longue période; d'autres peuvent durer moins de 20 minutes.

Toute aide serait appréciée.

+1

Ouvrez-vous une connexion et laissez-la ouverte pendant toute la durée de fonctionnement de l'application? Si c'est le cas, essayez de le fermer explicitement après chaque ensemble de transactions de base de données et ouvrez-le à nouveau si nécessaire. Cela semble que le serveur distant db ferme juste la connexion ouverte (inutilisée) pour vous. – Widor

Répondre

0

Cela se produit lorsque la connexion réseau est soudainement perdue. Cela m'arrive quand j'ouvre mon SQL Server et que je m'éloigne pour longtemps et que ça revient.

0

Il y a plusieurs choses à prendre en compte: vérifiez d'abord le pare-feu du serveur et créez des règles entrantes et sortantes pour le serveur SQL. Ensuite, s'il y a un antivirus dans le système, jetez un oeil à son comportement.

Questions connexes