Objawy
Na komputerze, na którym jest uruchomiony system Windows 7 wystąpić jeden lub kilka z następujących symptomów.
Symptom 1
Rozważ następujący scenariusz:
-
Możesz uruchomić asynchroniczne usługi sieci Web, który używa programu Microsoft.NET Framework 2.0 z dodatkiem Service Pack 2 (SP2) na serwerze.
-
Operacja asynchroniczna HttpWebRequest wysyła żądania sieci Web do usługi sieci Web. -
Usługa sieci Web zgłasza wyjątek.
W tym scenariuszu HttpWebRequest operacji asynchronicznej nie wywołuje Metoda lub funkcji wywołania zwrotnego. Jednak operacja asynchroniczna HttpWebRequest jest nieoczekiwanie zakończona. Następnie usługa sieci Web przestaje odpowiadać. Ponadto wykorzystanie Procesora na serwerze może wzrosnąć do 100 procent, a następnie serwer przestaje odpowiadać.
Symptom 2
Rozważ następujący scenariusz:
-
Uruchamianie aplikacji opartych na programie.NET Framework 2.0 z dodatkiem SP2, która wywołuje usługi sieci Web za pomocą składników Microsoft ASP.NET Web usługi klienta. Na przykład kod aplikacji jest generowany przez proces Wsdl.exe lub aplikacja wywołuje klasy SoapHttpClientProtocol .
-
Klient wywołuje asynchronicznie wywołania usługi sieci Web.
-
Klient wysyła żądanie do serwera.
-
Następnie klient odbiera odpowiedź w sieci Web, która ma zerowej długości zawartości.
Gdy usługa sieci Web próbuje przetworzyć tę odpowiedź w tym scenariuszu, generowany jest wyjątek . Następnie pojawi się następujący komunikat o błędzie:
Wartość nie może być zerowy.
Uwaga Ten problem nie występuje, gdy klient wywołuje synchronicznie wywołania usługi sieci Web.
Przyczyna
Symptom 1
Ten problem występuje, ponieważ obsługa wyjątków.NET Framework nie należy rozważyć przypadek, w którym metoda HttpWebRequest.EndGetRequestStream zgłasza wyjątek, gdy ten wyjątek zawiera odpowiedź z serwera.
Rozwiązanie
Informacje o poprawce
Obsługiwana poprawka jest obecnie udostępniana przez firmę Microsoft. Jednak jest ona przeznaczona do usunięcia tylko problemu opisanego w tym artykule. Zastosuj ją tylko w systemach, w których występuje ten problem.
Aby pobrać tę poprawkę, odwiedź następującą witrynę sieci Web Microsoft Connect:
http://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=27977
Stan
Firma Microsoft potwierdziła, że jest to problem występujący w produktach firmy Microsoft wymienionych w sekcji „Dotyczy”.
Więcej informacji
Aby uzyskać więcej informacji dotyczących problemów, które są opisane w sekcji "Symptom 1" kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
NAPRAW 973134 : Usługa sieci Web przestaje odpowiadać, a wyjątek podczas uruchamiania z systemem.NET Framework 2.0 S asynchroniczne usługi sieci Web
Aby uzyskać więcej informacji dotyczących problemów, które są opisane w sekcji "Symptom 2" kliknij następujący numer artykułu w celu wyświetlenia tego artykułu z bazy wiedzy Microsoft Knowledge Base:
NAPRAW 973136 : ArgumentNullException komunikat o błędzie wyjątku podczas aplikacji opartej na systemie.NET Framework 2.0 S próbuje przetworzyć odpowiedzi o zerowej długości zawartości na żądanie asynchroniczne usługi sieci Web ASP.NET: "Wartość nie może być null"