Oprava: Aplikace, která je založena na Microsoft rozhraní.NET Framework 2.0 Service Pack 2 a která vyvolá asynchronní volání webové služby vyvolá výjimku v počítači se systémem Windows 7

Příznaky

V počítači se systémem Windows 7 vyskytnout jeden nebo více následujících příznaků.

Příznak 1

Jde o takovouto situaci:

  • Spuštění asynchronní webové služby, který používá Microsoft rozhraní.NET Framework 2.0 Service Pack 2 (SP2) na serveru.


  • Asynchronní operace HttpWebRequest odešle webový požadavek webové služby.

  • Webová služba výjimku.

V tomto scénáři asynchronní operace HttpWebRequest nevolá metodu BeginGetResponse nebo funkci zpětného volání. Však je neočekávaně HttpWebRequest asynchronní operace dokončena. Potom webová služba přestane reagovat. Navíc využití procesoru na serveru může zvýšit na 100 procent a potom server přestane reagovat.

Příznak 2

Jde o takovouto situaci:

  • Je-li spustit Microsoft aplikace založené na rozhraní.NET Framework 2.0 SP2, která volá webové služby pomocí klientské součásti Microsoft ASP.NET webové služby. Například kód aplikace je generovaných procesem Wsdl.exe nebo aplikace volá třídy SoapHttpClientProtocol .

  • Klient spustí volání webové služby asynchronně.

  • Klient odešle požadavek na server.

  • Klient obdrží webovou odezvu obsahující nulové délky obsahu.

Pokud webová služba se pokusí zpracovat tuto odpověď v tomto scénáři, je vyvolána výjimka System.ArgumentNullException . Potom zobrazí následující chybová zpráva:

Hodnota nemůže být null.

Poznámka: K tomuto problému nedochází, pokud klient spustí volání webové služby synchronně.

Příčina

Příznak 1

K tomuto problému dochází, protože zpracování výjimek v rozhraní.NET Framework se nepovažuje případ, ve kterém metoda HttpWebRequest.EndGetRequestStream vyvolá výjimku, tato výjimka obsahuje odpověď ze serveru.

Řešení

Informace o opravě hotfix

Podporovaná oprava hotfix je nyní k dispozici od společnosti Microsoft. Je však určena opravit pouze problému popsaného v tomto článku. Použijte ji pouze u systémů, ve kterých dochází k tomuto konkrétnímu problému.

Chcete-li stáhnout tuto opravu hotfix, naleznete na následujícím webu společnosti Microsoft připojení:

http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=27977

Stav

Společnost Microsoft potvrdila, že se jedná o problém v produktech společnosti Microsoft, které jsou uvedeny v části "Platí pro".

Další informace

Další informace o problémech, které jsou popsány v části "Příznaku 1" získáte v následujícím článku znalostní báze Microsoft Knowledge Base:

973134 oprava: The webová služba přestane reagovat a je vyvolána výjimka při spuštění založené na rozhraní.NET Framework 2.0 S asynchronní webové služby

Další informace o problémech, které jsou popsány v části "Příznaku 2" klepněte na následující číslo článku databáze Microsoft Knowledge Base:

973136 oprava: chybová zpráva oznamující výjimku ArgumentNullException při jiné aplikace založené na rozhraní.NET Framework 2.0 S pokusí zpracovat odpověď nulové délky obsahu Asynchronní požadavek webové služby: "Hodnota nemůže být null"

Potřebujete další pomoc?

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojit se k programu Microsoft Insider

Byly tyto informace užitečné?

Děkujeme za váš názor!

Děkujeme vám za váš názor! Pravděpodobně bude užitečné, když vás spojíme s některým z našich agentů podpory Office.

×