FIX: Een WCF-service gebaseerd op .NET Framework 3.0 kan vastlopen met een uitzondering System.ServiceModel.CommunicationException als de service gebruikmaakt van de netTcpBinding-binding

Van toepassing op
.NET Framework 3.5 Service Pack 1 Windows Server 2008 R2 Service Pack 1

Symptomen

U voert een op Microsoft .NET Framework 3.0 gebaseerde Windows Communication Foundation (WCF)-service uit die gebruikmaakt van de netTcpBinding-binding. Wanneer er een tijdelijke netwerkfout optreedt, loopt de service vast vanwege een System.ServiceModel.CommunicationException-uitzondering. De uitzondering kan optreden vanwege een time-out of een onderliggend probleem met netwerkbronnen.

De stacktracering ziet er ongeveer uit zoals in het volgende voorbeeld:


at System.ServiceModel.Channels.SecurityChannelListener'1.DuplexSessionReceiveMessageAndVerifySecurityAsyncResult.BeginTryReceiveItem(TimeSpan timeout, AsyncCallback callback, Object state)
at System.ServiceModel.Channels.SecurityChannelListener'1.ReceiveItemAndVerifySecurityAsyncResult'2.StartInnerReceive()
at System.ServiceModel.Channels.SecurityChannelListener'1.ReceiveItemAndVerifySecurityAsyncResult'2.Start()
at System.ServiceModel.Channels.SecurityChannelListener'1.DuplexSessionReceiveMessageAndVerifySecurityAsyncResult.ReceiveMessage(Object state)
bij System.ServiceModel.Channels.IOThreadScheduler.CriticalHelper.WorkItem.Invoke2()
at System.Security.SecurityContext.Run(SecurityContext, securityContext, ContextCallback callback, Object state)
bij System.ServiceModel.Channels.IOThreadScheduler.CriticalHelper.WorkItem.Invoke()
at System.ServiceModel.Channels.IOThreadScheduler.CriticalHelper.ProcessCallbacks()
at System.ServiceModel.Channels.IOThreadScheduler.CriticalHelper.CompletionCallback(Object state)

Oorzaak

Dit probleem treedt op omdat de methode ReceiveMessage in het object DuplexSessionReceiveMessageAndVerifySecurityAsyncResult geen uitzonderingen onderschept die worden veroorzaakt door de fout en deze worden overgebracht naar de gebruikersthread.

Oplossing

Hotfix-informatie

Er is een ondersteunde hotfix beschikbaar van Microsoft. Deze hotfix is echter alleen bedoeld om het probleem op te lossen dat in dit artikel wordt beschreven. Pas deze hotfix alleen toe op systemen die het probleem ondervinden dat in dit artikel wordt beschreven. Deze hotfix kan aanvullende tests ontvangen. Daarom raden we je aan te wachten op de volgende software-update die deze hotfix bevat als je niet ernstig last hebt van dit probleem.

Als de hotfix kan worden gedownload, vindt u de sectie 'Hotfix-download beschikbaar' boven aan dit Knowledge Base-artikel. Als deze sectie niet wordt weergegeven, neem je contact op met de klantenservice en ondersteuning van Microsoft om de hotfix te verkrijgen.

Opmerking: Als er nog meer problemen optreden of als er probleemoplossing nodig is, moet u mogelijk een afzonderlijke serviceaanvraag maken. De gebruikelijke ondersteuningskosten zijn van toepassing op aanvullende ondersteuningsvragen en problemen die niet in aanmerking komen voor deze specifieke hotfix. Voor een volledige lijst met telefoonnummers van de klantenservice en ondersteuning van Microsoft of om een afzonderlijke serviceaanvraag te maken, gaat u naar de volgende Microsoft-website:

http://support.microsoft.com/contactus/?ws=support Opmerking: Op het formulier 'Hotfix download beschikbaar' worden de talen weergegeven waarvoor de hotfix beschikbaar is. Als je je taal niet ziet, komt dit doordat er geen hotfix beschikbaar is voor die taal.

Vereisten

Microsoft .NET Framework 3.5 Service Pack 1 (SP1) moet zijn geïnstalleerd op een van de volgende Windows-besturingssystemen om deze hotfix toe te passen:

  • Windows Vista servicepack 2 (SP2)
  • Windows Server 2008 servicepack 2 (SP2)
  • Windows 7 Service Pack 1 (SP1)
  • Windows Server 2008 R2 servicepack 1 (SP1)

Als u meer informatie wilt over het verkrijgen van een Windows Vista-servicepack, klikt u op het volgende artikelnummer in de Microsoft Knowledge Base:

935791 Het meest recente servicepack voor Windows Vista verkrijgenAls u meer informatie wilt over het verkrijgen van een servicepack voor Windows Server 2008, klikt u op het volgende artikelnummer in de Microsoft Knowledge Base:

968849 Het meest recente servicepack voor Windows Server 2008 verkrijgenVoor meer informatie over het verkrijgen van Service Pack 1 voor Windows 7 of voor Windows Server 2008 R2 klikt u op het volgende artikelnummer in de Microsoft Knowledge Base:

976932 Informatie over Service Pack 1 voor Windows 7 en voor Windows Server 2008 R2

Informatie over opnieuw opstarten

Mogelijk moet u de computer opnieuw opstarten nadat u deze hotfix hebt toegepast als er betrokken bestanden worden gebruikt. U wordt aangeraden alle .NET Framework-toepassingen af te sluiten voordat u deze hotfix toepast, om te voorkomen dat u de computer opnieuw moet opstarten.

Informatie over vervanging

Deze hotfix is geen vervanging van een eerder uitgebrachte hotfix.

Bestandsinformatie

De Engelse versie van deze hotfix heeft de bestandskenmerken (of latere bestandsattributen) die in de volgende tabel worden vermeld. De datums en tijden voor deze bestanden worden weergegeven in Coordinated Universal Time (UTC). Wanneer u de bestandsinformatie bekijkt, wordt deze geconverteerd naar de lokale tijd. Als je het verschil tussen UTC en lokale tijd wilt vinden, gebruik je het tabblad Tijdzone in het item Datum en tijd in Configuratiescherm.

Voor alle ondersteunde x86-versies van Windows Vista SP2 en van Windows Server 2008 SP2

Bestandsnaam Bestandsversie Bestandsgrootte Datum Tijd Platform
Smdiagnostics.dll 3.0.4506.5721 110,592 23-aug- 2011 10:57 x86
Smsvchost.exe 3.0.4506.5721 128,848 23-augustus-2011 10:57 x86
System.identitymodel.dll 3.0.4506.5721 442,368 23 -aug-2011 10:57 x86
System.runtime.serialization.dll 3.0.4506.5721 970,752 23-aug- 2011 10:57 x86
System.runtime.serialization.dll 3.0.4506.5721 970,752 23-aug- 2011 10:57 x86
System.servicemodel.dll 3.0.4506.5721 5,992,448 23-aug- 2011 10:57 x86
System.servicemodel.washosting.dll 3.0.4506.5721 32.768 23-aug- 2011 10:57 x86
System.servicemodel.dll 3.0.4506.5721 5,992,448 23-augustus-2011 10:57 x86
Servicemodel.mof Niet van toepassing 85,113 28-jul-2011 10:57 Niet van toepassing
Servicemodel.mof.uninstall Niet van toepassing 896 12-augustus-2010 14:24 Niet van toepassing
Servicemonikersupport.dll 3.0.4506.5721 17,256 23-augustus-2011 10:57 x86
System.identitymodel.dll 3.0.4506.5721 442,368 23-aug- 2011 10:57 x86
System.runtime.serialization.dll 3.0.4506.5721 970,752 23-aug- 2011 10:57 x86
System.servicemodel.dll 3.0.4506.5721 5,992,448 23-augustus-2011 10:57 x86

Voor alle ondersteunde x64-versies van Windows Vista SP2 en van Windows Server 2008 SP2

Bestandsnaam Bestandsversie Bestandsgrootte Datum Tijd Platform
Servicemodel.mof Niet van toepassing 85,113 28-jul-2011 10:55 Niet van toepassing
Servicemodel.mof.uninstall Niet van toepassing 896 12-augustus-2010 14:10 Niet van toepassing
Servicemonikersupport.dll 3.0.4506.5721 19,304 23-augustus-2011 10:55 x64
Smdiagnostics.dll 3.0.4506.5721 94.208 23-aug- 2011 10:55 x64
Smsvchost.exe 3.0.4506.5721 116,560 23-augustus-2011 10:55 x64
System.identitymodel.dll 3.0.4506.5721 401,408 23 -aug-2011 10:55 x64
System.runtime.serialization.dll 3.0.4506.5721 847,872 23-aug- 2011 10:55 x64
System.runtime.serialization.dll 3.0.4506.5721 847,872 23-aug- 2011 10:55 x64
System.servicemodel.dll 3.0.4506.5721 5,332,992 23-aug- 2011 10:55 x64
System.servicemodel.washosting.dll 3.0.4506.5721 32.768 23-aug- 2011 10:55 x64
System.servicemodel.dll 3.0.4506.5721 5,332,992 23-augustus-2011 10:55 x64

Voor alle ondersteunde IA-64-versies van Windows Server 2008 SP2

Bestandsnaam Bestandsversie Bestandsgrootte Datum Tijd Platform
Servicemodel.mof Niet van toepassing 85,113 28-jul-2011 11:26 Niet van toepassing
Servicemodel.mof.uninstall Niet van toepassing 896 16-augustus-2010 14:36 Niet van toepassing
Servicemonikersupport.dll 3.0.4506.5721 33,640 23-augustus-2011 11:24 IA-64
Smdiagnostics.dll 3.0.4506.5721 94.208 23-aug- 2011 11:24 IA-64
Smsvchost.exe 3.0.4506.5721 116,560 23-augustus-2011 11:24 IA- 64
System.identitymodel.dll 3.0.4506.5721 401,408 23-augustus-2011 11:24 IA-64
System.runtime.serialization.dll 3.0.4506.5721 847,872 23-aug- 2011 11:24 IA-64
System.runtime.serialization.dll 3.0.4506.5721 847,872 23-augustus-2011 11:24 IA- 64
System.servicemodel.dll 3.0.4506.5721 5,332,992 23-augustus-2011 11:24 IA-64
System.servicemodel.washosting.dll 3.0.4506.5721 32.768 23-aug- 2011 11:24 IA-64
System.servicemodel.dll 3.0.4506.5721 5,332,992 23-augustus-2011 11:24 IA-64

Voor alle ondersteunde, op x86 gebaseerde versies van Windows 7 SP1

Bestandsnaam Bestandsversie Bestandsgrootte Datum Tijd Platform
Smdiagnostics.dll 3.0.4506.5721 110,592 22-augustus-2011 22:36 x86
Smsvchost.exe 3.0.4506.5721 128,848 22-augustus-2011 22:36 x86
System.identitymodel.dll 3.0.4506.5721 442,368 22-augustus-2011 22:36 x86
System.runtime.serialization.dll 3.0.4506.5721 970,752 22-augustus-2011 22:36 x86
System.servicemodel.dll 3.0.4506.5721 5,992,448 22-augustus-2011 22:36 x86
System.servicemodel.washosting.dll 3.0.4506.5721 32.768 22-augustus-2011 22:36 x86
Servicemodel.mof Niet van toepassing 85,113 12-nov-2010 23:36 Niet van toepassing
Servicemodel.mof.uninstall Niet van toepassing 896 10-jun-2009 21:14 Niet van toepassing
Servicemonikersupport.dll 3.0.4506.5721 17,256 22-augustus-2011 22:36 x86
System.identitymodel.dll 3.0.4506.5721 442,368 22-augustus-2011 22:36 x86

Voor alle ondersteunde x64-versies van Windows 7 SP1 en Windows Server 2008 R2 SP1

Bestandsnaam Bestandsversie Bestandsgrootte Datum Tijd Platform
Servicemodel.mof Niet van toepassing 85,113 12-nov-2010 23:39 Niet van toepassing
Servicemodel.mof.uninstall Niet van toepassing 896 10-jun-2009 20:30 Niet van toepassing
Servicemonikersupport.dll 3.0.4506.5721 19,304 22-augustus-2011 22:31 x64
Smdiagnostics.dll 3.0.4506.5721 94.208 22-augustus-2011 22:31 x64
Smsvchost.exe 3.0.4506.5721 116,560 22-augustus-2011 22:31 x64
System.identitymodel.dll 3.0.4506.5721 401,408 22-augustus-2011 22:31 x64
System.runtime.serialization.dll 3.0.4506.5721 847,872 22-augustus-2011 22:31 x64
System.servicemodel.dll 3.0.4506.5721 5,332,992 22-augustus-2011 22:31 x64
System.servicemodel.washosting.dll 3.0.4506.5721 32.768 22-augustus-2011 22:31 x64

Voor alle ondersteunde IA-64-versies van Windows Server 2008 R2 SP1

Bestandsnaam Bestandsversie Bestandsgrootte Datum Tijd Platform
Servicemodel.mof Niet van toepassing 85,113 12-nov-2010 23:40 Niet van toepassing
Servicemodel.mof.uninstall Niet van toepassing 896 10-jun-2009 20:35 Niet van toepassing
Servicemonikersupport.dll 3.0.4506.5721 33,640 22-augustus-2011 22:25 IA-64
Smdiagnostics.dll 3.0.4506.5721 94.208 22-augustus-2011 22:25 IA-64
Smsvchost.exe 3.0.4506.5721 116,560 22-augustus-2011 22:25 IA-64
System.identitymodel.dll 3.0.4506.5721 401,408 22-augustus-2011 22:25 IA-64
System.runtime.serialization.dll 3.0.4506.5721 847,872 22-augustus-2011 22:25 IA-64
System.servicemodel.dll 3.0.4506.5721 5,332,992 22-augustus-2011 22:25 IA-64
System.servicemodel.washosting.dll 3.0.4506.5721 32.768 22-augustus-2011 22:25 IA-64

Meer informatie

Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie over de terminologie van software-updates:

824684 Beschrijving van de standaardterminologie die wordt gebruikt om Microsoft-software-updates te beschrijven