Příznaky
Zvažte následující scénář. V rozhraní Microsoft .NET Framework 2,0 pomocí metody BeginGetRequestStream a metody EndGetRequestStream ve třídě HTTPWEBREQUEST dokončete asynchronní požadavek HTTP. V tomto scénáři se při pokusu o přístup k objektu streamu vrácenému metodou EndGetRequestStream dostanete výjimku System. ObjectDisposedException . Poznámka K tomuto problému dochází, jenom když nastavíte vlastnost Method (metoda ) ve třídě HttpWebRequest na vlastnost protokolu, která nahraje data. Můžete třeba nastavit vlastnost Method na post.
Příčina
Tento problém nastane, když webový server resetuje nebo ukončí připojení, jakmile klientská aplikace odešle záhlaví HTTP. Třída HttpWebRequest se automaticky pokusí přepojit o připojení k webovému serveru. Když je přenos úspěšný, vrátí metoda EndGetRequestStream nesprávně objekt Stream z prvního nezdařeného pokusu o připojení namísto objektu Stream z úspěšného pokusu o připojení. Když se klientská aplikace pokusí použít tento vyřazený objekt streamu , vyvolá se výjimka System. ObjectDisposedException .
Řešení
Informace o opravě hotfix
Společnost Microsoft má k dispozici podporovanou opravu hotfix. Tato oprava hotfix je však určena pouze k odstranění problému popsaného v tomto článku. Tuto opravu hotfix použijte pouze u systémů, ve kterých dochází k tomuto specifickému problému. Tato oprava hotfix může obsahovat další testování. Pokud vás tedy tento problém příliš neobtěžuje, doporučujeme, abyste počkali na další aktualizaci softwaru, která bude obsahovat tuto opravu hotfix. Pokud chcete tuto opravu hotfix stáhnout z Galerie kód na webu MSDN, navštivte následující web společnosti Microsoft:
http://code.msdn.microsoft.com/KB918462Poznámka Galerie kód na webu MSDN zobrazuje jazyky, pro které je oprava hotfix k dispozici. Pokud váš jazyk uvedený v seznamu nevidíte, je to proto, že pro tento jazyk není dostupná stránka zdroje Galerie kódu.Poznámka Pokud se vyskytnou další problémy nebo pokud se vyžaduje řešení potíží, budete možná muset vytvořit samostatnou žádost o službu. Na další otázky a problémy podpory, které neopravňují tuto specifickou opravu hotfix, se budou vztahovat běžné poplatky za podporu. Úplný seznam telefonních čísel pro zákaznické služby společnosti Microsoft a podpory pro vytvoření samostatného požadavku na službu najdete na následujícím webu společnosti Microsoft:
http://support.microsoft.com/contactus/?ws=support
Požadavky
Abyste mohli nainstalovat tuto opravu hotfix, musíte mít nainstalovaný .NET Framework 2,0.
Požadavky na restartování
Po instalaci této opravy hotfix není nutné restartovat počítač.
Informace o nahrazení opravy Hotfix
Tato oprava hotfix nenahrazuje žádné další opravy hotfix.
Informace o souborech
Anglická verze této opravy hotfix má následující (nebo pozdější) atributy souborů. Data a časy jednotlivých souborů jsou uvedeny ve formátu UTC (Coordinated Universal Time). Při zobrazení informací o souboru jsou převedeny na místní čas. Pokud chcete najít rozdíl mezi časem UTC a místním časem, použijte kartu časové pásmo na ovládacím panelu Datum a čas.
Název souboru |
File version |
File size |
Date |
Time |
---|---|---|---|---|
System.dll |
2.0.50727.109 |
3 018 752 |
01-May-2006 |
21:15 |
Stav
Společnost Microsoft potvrzuje, že se jedná o problém v produktech této společnosti, které jsou uvedeny v části Informace v tomto článku jsou určeny pro produkt.
Další informace
Další informace o třídě HttpWebRequest najdete na následujícím webu služby MSDN (Microsoft Developer Network):
http://msdn2.microsoft.com/en-us/library/system.net.httpwebrequest.aspxDalší informace o třídě System. ObjectDisposedException najdete na následujícím webu služby MSDN:
http://msdn2.microsoft.com/en-us/library/system.objectdisposedexception.aspxChcete-li získat další informace, kliknutím na následující číslo článku zobrazíte tento článek ve znalostní bázi Microsoft Knowledge Base:
824684 Popis standardní terminologie používané při popisu aktualizací softwaru společnosti Microsoft