Symptomer
Tenk deg følgende:
-
Du oppretter en Windows Communication Foundation (WCF) service som er lagret i Internet Information Services (IIS).
-
Du bruker WebScriptEnablingBehavior -klassen i WCF-tjenesten.
-
Du kan konfigurere WCF-tjenesten hvis du vil bruke et klientsertifikat for Secure Sockets Layer (SSL)-godkjenning. Hvis du vil gjøre dette, må du angi egenskapen ClientCredentialType i filen Web.config for sertifikat.
I dette scenariet, når du kjører WCF-tjenesten, et System.NotSupportedException -unntak er registrert og du får en feilmelding ligner som på følgende:
SSL-innstillingene for tjenesten 'Ingen' stemmer ikke med IIS 'Ssl, SslNegotiateCert, SslRequireCert, SslMapCert, Ssl128'.
Årsak
Dette problemet oppstår fordi noen egenskaper for forekomsten av HttpTransportBindingElement ikke kopieres til automatisk genererte javascript proxy endepunktene.
Løsning
En støttet hurtigreparasjon er nå tilgjengelig fra Microsoft. Den er imidlertid kun ment å løse problemet som beskrives i denne artikkelen. Bruk den bare på systemer som har dette bestemte problemet.
Hvis du vil løse dette problemet, kontakter du Microsoft Kundestøtte for å få hurtigreparasjonen. For en fullstendig liste over telefonnumre for Microsofts kundestøttetjenester og informasjon om støttekostnader, kan du gå til følgende Microsoft-webområde:
http://support.microsoft.com/contactus/?ws=supportObs! I spesielle tilfeller kan avgifter som vanligvis påløper for oppringinger til kundestøtte kanselleres hvis en Microsoft-tekniker avgjør at en bestemt oppdatering løser problemet. Vanlige kundestøttekostnader gjelder for ytterligere kundestøttespørsmål og problemer som ikke dekkes av den gjeldende oppdateringen.
Forutsetninger
Du må ha for .NET Framework 3.5 Service Pack 1 (SP1) installert for å bruke denne hurtigreparasjonen.
Krav om omstart
Du har ikke datamaskinen på nytt etter at du har installert hurtigreparasjonen.
Informasjon om erstatning av hurtigreparasjoner
Denne hurtigreparasjonen erstatter ikke andre hurtigreparasjoner.
Den engelskspråklige versjonen av denne hurtigreparasjonen har filattributtene (eller senere filattributter) som er oppført i følgende tabell. Datoene og klokkeslettene for disse filene er oppført i Coordinated Universal Time (UTC). Når du viser filinformasjonen, konverteres den til lokal tid. Hvis du vil finne forskjellen mellom UTC og lokal tid, kan du bruke kategorien tidssone under dato og klokkeslett i Kontrollpanel.
x86-basert versjon for Windows Server 2000, Windows Server 2003 og Windows XP
Filnavn |
Filversjon |
Filstørrelse |
Dato |
Tid |
Plattform |
---|---|---|---|---|---|
System.servicemodel.web.dll |
3.5.594.4152 |
569,344 |
22-Jul-2009 |
01:51 |
x86 |
x64-basert versjon for Windows Server 2000, Windows Server 2003 og Windows XP
Filnavn |
Filversjon |
Filstørrelse |
Dato |
Tid |
Plattform |
---|---|---|---|---|---|
System.servicemodel.web.dll |
3.5.594.4152 |
491,520 |
22-Jul-2009 |
02:13 |
x64 |
Itanium-basert versjon for Windows Server 2000, Windows Server 2003 og Windows XP
Filnavn |
Filversjon |
Filstørrelse |
Dato |
Tid |
Plattform |
---|---|---|---|---|---|
System.servicemodel.web.dll |
3.5.594.4152 |
491,520 |
22-Jul-2009 |
02:26 |
IA-64 |
Status
Microsoft har bekreftet at dette er et problem i Microsoft-produktene som er oppført i delen "Gjelder for".
Løsning
Hvis du vil omgå dette problemet, selv vert for WCF-tjeneste i stedet for å være vert for tjenesten i IIS.
Hvis du vil ha mer informasjon
Stakken dump informasjon
System.ServiceModel.dll!System.ServiceModel.Channels.HttpsChannelListener.ApplyHostedContext(System.ServiceModel.Activation.VirtualPathExtension virtualPathExtension, bool isMetadataListener) + 0x1b7 bytes
System.ServiceModel.dll!System.ServiceModel.Channels.HttpsTransportBindingElement.BuildChannelListener<System.__Canon>(System.ServiceModel.Channels.BindingContext context) + 0x69 bytes
System.ServiceModel.dll!System.ServiceModel.Channels.BindingContext.BuildInnerChannelListener<System.__Canon>() + 0x5f bytes
System.ServiceModel.dll!System.ServiceModel.Channels.MessageEncodingBindingElement.InternalBuildChannelListener<System.__Canon>(System.ServiceModel.Channels.BindingContext context) + 0x66 bytes
System.ServiceModel.Web.dll!System.ServiceModel.Channels.WebScriptMetadataMessageEncodingBindingElement.BuildChannelListener<System.__Canon>(System.ServiceModel.Channels.BindingContext context) + 0x4b bytes
System.ServiceModel.dll!System.ServiceModel.Channels.BindingContext.BuildInnerChannelListener<System.__Canon>() + 0x5f bytes
System.ServiceModel.dll!System.ServiceModel.Channels.Binding.BuildChannelListener<System.__Canon>(System.Uri listenUriBaseAddress, string listenUriRelativeAddress, System.ServiceModel.Description.ListenUriMode listenUriMode, System.ServiceModel.Channels.BindingParameterCollection parameters) + 0xa6 bytes
System.ServiceModel.dll!System.ServiceModel.Channels.Binding.BuildChannelListener<System.__Canon>(System.Uri listenUriBaseAddress, System.ServiceModel.Channels.BindingParameterCollection parameters) + 0x7c bytes
System.ServiceModel.Web.dll!System.ServiceModel.Description.WebScriptEnablingBehavior.AddMetadataEndpoint(System.ServiceModel.Description.ServiceEndpoint endpoint, System.ServiceModel.Dispatcher.EndpointDispatcher endpointDispatcher, bool debugMode) + 0x698 bytes
System.ServiceModel.Web.dll!System.ServiceModel.Description.WebScriptEnablingBehavior.ApplyDispatchBehavior(System.ServiceModel.Description.ServiceEndpoint endpoint, System.ServiceModel.Dispatcher.EndpointDispatcher endpointDispatcher) + 0x60 bytes