Update: Intermittent "wurde zugrunde Verbindung geschlossen" Fehlermeldung beim Aufrufen eines Webdienstes von ASP.NET

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 819450 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Alles erweitern | Alles schließen

Problembeschreibung

Beim Aufrufen eines Microsoft ASP.NET-Web Service von einer ASP.NET Anwendung möglicherweise zeitweise die folgenden Fehlermeldung angezeigt:
Die zugrunde liegende Verbindung wurde geschlossen: Unerwarteter Fehler bei einer senden.
Die Aufrufliste ist der folgenden ähnelt:
System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a send.
 At System.Web.Services.Protocols.WebClientProtocol.GetWebResponse(WebRequest request) at 
System.Web.Services.Protocols.HttpWebClientProtocol.GetWebResponse(WebRequest request) at 
System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at 
...

Lösung

Ein unterstützter Hotfix ist inzwischen von Microsoft. Es ist jedoch nur die Behebung des Problems die in diesem Artikel beschriebene vorgesehen. Wenden Sie es nur auf Systemen, bei die dieses spezielle Problem auftritt. Dieser Hotfix wird unter Umständen zu einem späteren Zeitpunkt weiteren Tests unterzogen. Wenn Sie durch dieses Problem nicht schwerwiegend betroffen sind, empfiehlt Microsoft daher, auf das nächste Microsoft .NET Framework Service Pack warten, das diesen Hotfix enthält wird.

Dieses Problem sofort beheben möchten, wenden Sie sich an Microsoft Support Services, um den Hotfix zu erhalten. Eine vollständige Liste mit Telefonnummern der Microsoft Product Support Services und Informationen über Supportkosten der folgenden Microsoft-Website:
http://support.microsoft.com/contactus/?ws=support
Hinweis: PLEASE DO NOT TRANSLATE and DELETE THIS PASSAGE. IT DOES NOT APPLY TO GERMANY.

Die englische Version dieses Hotfixes weist die Dateiattribute (oder höher Dateiattribute), die in der folgenden Tabelle aufgelistet werden. Die Datums- und Uhrzeitangaben für diese Dateien sind in Coordinated Universal Time (UTC) angegeben. Wenn Sie sich die Dateiinformationen ansehen, werden diese Angaben in die lokale Zeit konvertiert. Verwenden Sie die Registerkarte Zeitzone im Element Datum und Uhrzeit in der Systemsteuerung, um die Differenz zwischen UTC und der Ortszeit zu ermitteln.
   Date         Time   Version       Size       File name                    Platform
   ----------------------------------------------------------------------------------
   01-May-2003  12:48  1.0.3705.426     20,480  Perfcounter.dll              X86
   01-May-2003  12:48  1.0.3705.426  1,175,552  System.dll                   X86
   01-May-2003  12:48  1.0.3705.426    311,296  System.runtime.remoting.dll  X86
   01-May-2003  12:48  1.0.3705.426    503,808  System.web.services.dll      X86	
Dieser Hotfix ist in .NET Framework 1.0 Service Pack 3 und in .NET Framework 1.1 Service Pack 1 enthalten.

Weitere Informationen zum Beziehen des neuesten Service Packs für .NET Framework 1.0 finden Sie im folgenden Artikel der Microsoft Knowledge Base:
318836So erhalten Sie das neueste .NET Framework 1.0 Servicepack

Status

Microsoft hat bestätigt, dass dies ein Problem in Microsoft-Produkten handelt, die im Abschnitt "Gilt für" aufgeführt sind.

Weitere Informationen

Die Fehlermeldung die im Abschnitt "Problembeschreibung" erwähnte kann auch gültige Gründen auftreten. Z. B. die zugrunde liegende Verbindung möglicherweise Gründen geschlossen wurden, die außerhalb der Kontrolle des Clients sind. In solchen Fällen ist das Microsoft .NET Framework ordnungsgemäß verhält.

Beispielsweise wenn die Webdienste, die aufgerufen werden gehostet werden, in eine Software oder in einer Hardware mit Lastenausgleich-Umgebung, die Server enthält, die HTTP 1.1 und Keep-alive-Verbindungen unterstützen, die Verbindung kann durch die Zeit beendet haben, die der Client versucht, die Verbindung erneut verwenden. Wenn dieser Fehler weiterhin, auftritt nachdem Sie dieses Update angewendet haben, versuchen Sie Folgendes:
  • Konfigurieren Sie die Website, die nicht mit Keep-alive-Verbindungen die Webdienste hostet. Gehen Sie hierzu folgendermaßen vor:
    1. Öffnen Sie die Microsoft Internet Information Server (IIS)-Verwaltungskonsole und suchen Sie der Server.
    2. Klicken Sie auf die Registerkarte Website der Eigenschaftenseite für die Website .
    3. Deaktivieren Sie die von HTTP-Keep-Alives aktiviert das Kontrollkästchen.
  • Stellen Sie sicher, dass Load-balancing Hardware oder Software ordnungsgemäß für Ihre Anwendungsanforderungen konfiguriert ist.
  • Wenn Sie keine Kontrolle über die Serverumgebung, die Webdienste hostet, die Sie aufrufen verfügen, müssen Sie die Keep-alive-Verbindungen auf dem Client zu deaktivieren. Gehen Sie hierzu folgendermaßen vor:
    1. Legen Sie die KeepAlive --Eigenschaft der HttpWebRequest -Klasse auf false fest.
    2. Überschreiben Sie die HttpWebRequest -Methode in Reference.cs-Datei, die für den Webproxy-Client von Microsoft Visual Studio .NET generiert wird. Der folgende Code überschreibt der HttpWebRequest -Methode.
      protected override WebRequest GetWebRequest(Uri uri)
       {
       HttpWebRequest webRequest = (HttpWebRequest) base.GetWebRequest(uri);
       
       webRequest.KeepAlive = false;
       
       return webRequest;
       }
      

Informationsquellen

Weitere Informationen, wie Sie .NET Framework 1.1 Service Pack 1 erhalten können finden Sie im folgenden Artikel der Microsoft Knowledge Base:
885055So erhalten Sie Microsoft .NET Framework 1.1 Service Pack 1

Eigenschaften

Artikel-ID: 819450 - Geändert am: Dienstag, 6. November 2007 - Version: 2.9
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft .NET Framework 1.0
  • Microsoft .NET Framework 1.0 Service Pack 1
  • Microsoft .NET Framework 1.0 Service Pack 2
  • Microsoft .NET Framework 1.1
Keywords: 
kbmt kbhotfixserver kbqfe kbnetframe100presp3fix kbfix kbbug KB819450 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 819450
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com