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 :Remarque 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 :

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 fichierVersion du fichierTaille du fichierDateHeure
System.dll2.0.50727.1093 018 75201-May-200621: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 :Pour plus d’informations sur la classe System. ObjectDisposedException , visitez le site Web MSDN suivant :Pour 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