SOLUTION : vous recevez une exception System. ObjectDisposedException lorsque vous tentez d’accéder à un objet de flux renvoyé par la méthode EndGetRequestStream dans le .NET Framework 2,0

Symptômes

Considérez le scénario suivant. Dans Microsoft .NET Framework 2,0, vous utilisez la méthode BeginGetRequestStream et la méthode EndGetRequestStream dans la classe HTTPWEBREQUEST pour exécuter une requête HTTP asynchrone. Dans ce scénario, lorsque vous essayez d’accéder à l’objet de flux renvoyé par la méthode EndGetRequestStream , vous recevez une exception System. ObjectDisposedException . Remarque Ce problème se produit uniquement si vous définissez la propriété de méthode de la classe HttpWebRequest sur une propriété de protocole chargée de télécharger des données. Par exemple, vous définissez la propriété Method sur post.

Cause

Ce problème survient lorsque le serveur Web réinitialise ou ferme la connexion après l’envoi de l’en-tête HTTP par l’application cliente. La classe HttpWebRequest tente automatiquement de rouvrir une connexion au serveur Web pour achever le transfert. Une fois le transfert terminé, la méthode EndGetRequestStream retourne incorrectement l’objet de flux à partir de la première tentative de connexion en échec, au lieu de l’objet de flux à partir de la tentative de connexion réussie. Lorsque l’application cliente tente d’utiliser cet objet de flux supprimé, une exception System. ObjectDisposedException est levée.

Résolution

Informations sur le correctif logiciel

Un correctif pris en charge est disponible auprès de Microsoft. Ce correctif est toutefois destiné à corriger uniquement le problème décrit dans cet article. Appliquez ce correctif uniquement aux systèmes rencontrant ce problème spécifique. Ce correctif peut recevoir des tests supplémentaires. Par conséquent, si vous n’êtes pas sérieusement concerné par ce problème, nous vous recommandons d’attendre la prochaine mise à jour logicielle qui contient ce correctif. Pour télécharger ce correctif à partir de la Galerie de code MSDN, visitez le site Web de Microsoft suivant :

http://code.msdn.microsoft.com/KB918462Remarque La Galerie de code MSDN affiche les langues pour lesquelles le correctif est disponible. Si votre langue n’est pas répertoriée, cela signifie que la page de la bibliothèque de code n’est pas disponible pour cette langue.Remarque Si des problèmes supplémentaires se produisent ou s’il est nécessaire de résoudre un problème, vous devrez peut-être créer une demande de service distincte. Les frais habituels du support technique s’appliquent aux autres questions et problèmes liés au support qui ne sont pas éligibles pour ce correctif particulier. Pour obtenir la liste complète des services clientèle Microsoft et des numéros de téléphone de support technique ou pour créer une demande de service distincte, visitez le site Web de Microsoft suivant :

http://support.microsoft.com/contactus/?ws=support

Conditions préalables

Pour appliquer ce correctif, vous devez avoir installé .NET Framework 2,0.

Nécessité de redémarrer

Vous n’avez pas besoin de redémarrer votre ordinateur après avoir appliqué ce correctif.

Informations sur le remplacement de correctif logiciel

Ce correctif logiciel n'en remplace pas d'autre.

Informations sur les fichiers

La version anglaise de ce correctif a les attributs de fichier (ou les attributs de fichier suivants) qui sont répertoriés dans le tableau suivant. Les date et heure de création de ces fichiers sont exprimées en temps universel coordonné (UTC). Lorsque vous affichez les informations des fichiers, les données sont converties en heure locale. Pour connaître la différence entre l’heure TUC et l’heure locale, utilisez l’onglet fuseau horaire dans l’élément date et heure du panneau de configuration.

Nom du fichier

Version du fichier

Taille du fichier

Date

Heure

System.dll

2.0.50727.109

3 018 752

01-May-2006

21:15

Statut

Microsoft a confirmé l'existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.

Informations supplémentaires

Pour plus d’informations sur la classe HttpWebRequest , visitez le site Web Microsoft Developer Network (MSDN) suivant :

http://msdn2.microsoft.com/en-us/library/system.net.httpwebrequest.aspxPour plus d’informations sur la classe System. ObjectDisposedException , visitez le site Web MSDN suivant :

http://msdn2.microsoft.com/en-us/library/system.objectdisposedexception.aspxPour plus d’informations, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :

824684 Terminologie standard utilisée pour décrire les mises à jour logicielles Microsoft

Besoin d’aide ?

Développez vos compétences
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoindre Microsoft Insider

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la traduction ?

Qu’est-ce qui a affecté votre expérience ?

Avez-vous d’autres commentaires ? (Facultatif)

Nous vous remercions pour vos commentaires.

×