Applies To.NET Framework 3.5 Service Pack 1

อาการ

พิจารณาสถานการณ์สมมติต่อไปนี้:

  • คุณสร้างการบริการของ Windows สื่อสารพื้นฐาน (WCF) ที่โฮสต์ใน Internet Information Services (IIS)

  • คุณสามารถใช้คลาWebScriptEnablingBehaviorในบริการ WCF

  • คุณตั้งค่าคอนฟิกบริการ WCF จะใช้ใบรับรองไคลเอ็นต์สำหรับการรับรองความถูกต้องของ การรักษาความปลอดภัย Secure Sockets Layer (SSL) เมื่อต้องการทำเช่นนี้ คุณต้องตั้งค่าคุณสมบัติClientCredentialTypeในไฟล์ Web.config เป็นใบรับรอง

ในสถานการณ์สมมตินี้ เมื่อคุณเรียกใช้บริการ WCF ถูกเว้นเป็นSystem.NotSupportedExceptionและคุณได้รับข้อผิดพลาด ที่คล้ายกับต่อไปนี้:

การตั้งค่า SSL สำหรับบริการ 'ไม่มี' ไม่ตรงกับของ IIS 'Ssl, SslNegotiateCert, SslRequireCert, SslMapCert, Ssl128'

สาเหตุ

ปัญหานี้เกิดขึ้นเนื่องจากคุณสมบัติบางอย่างของอินสแตนซ์HttpTransportBindingElementไม่ได้ถูกคัดลอกไปปลายทางของพร็อกซี javascript ที่สร้างโดยอัตโนมัติ

การแก้ปัญหา

โปรแกรมแก้ไขด่วนจะพร้อมใช้งานได้ในขณะนี้จาก Microsoft อย่างไรก็ตาม มีจุดมุ่งหมายที่จะแก้ไขเฉพาะปัญหาที่บทความนี้อธิบายไว้เท่านั้น นำวิธีนี้ไปใช้กับระบบที่ประสบกับปัญหาที่เฉพาะเจาะจงเท่านั้นหากต้องการแก้ไขปัญหานี้ ให้ติดต่อฝ่ายบริการสนับสนุนลูกค้าของ Microsoft เพื่อขอรับโปรแกรมแก้ไขด่วน สำหรับรายการทั้งหมดของหมายเลขโทรศัพท์บริการการสนับสนุนลูกค้าของ Microsoft และข้อมูลเกี่ยวกับค่าใช้จ่ายในการสนับสนุน โปรดเยี่ยมชมเว็บไซต์ต่อไปนี้ของ Microsoft:

http://support.microsoft.com/contactus/?ws=supportหมายเหตุ ในกรณีพิเศษ ค่าบริการที่เรียกเก็บตามปกติเมื่อโทรติดต่อฝ่ายสนับสนุนอาจจะยกเลิกได้หาก Microsoft Support Professional ตัดสินว่าโปรแกรมปรับปรุงที่เฉพาะเจาะจงจะแก้ไขปัญหาของคุณได้ ค่าใช้จ่ายในการสนับสนุนตามปกติจะใช้กับคำถามและปัญหาในการสนับสนุนเพิ่มเติมซึ่งไม่สอดคล้องตามเกณฑ์สำหรับโปรแกรมปรับปรุงเฉพาะที่เกี่ยวข้อง

ข้อกำหนดเบื้องต้น

คุณต้องมีการ.NET Framework 3.5 Service Pack 1 (SP1 ติดตั้งไว้เพื่อใช้โปรแกรมแก้ไขด่วนนี้)

ข้อกำหนดการรีสตาร์ท

คุณไม่ต้องรีสตาร์ทเครื่องคอมพิวเตอร์หลังจากที่คุณติดตั้งโปรแกรมแก้ไขด่วน

ข้อมูลการแทนที่โปรแกรมแก้ไขด่วน

โปรแกรมแก้ไขด่วนนี้ไม่ได้แทนโปรแกรมแก้ไขด่วนอื่น ๆ เวอร์ชันภาษาอังกฤษของโปรแกรมแก้ไขด่วนนี้มีแอตทริบิวต์ของแฟ้ม (หรือแอตทริบิวต์ของแฟ้มที่ใหม่กว่านี้) ซึ่งแสดงรายการไว้ในตารางต่อไปนี้ วันที่และเวลาสำหรับแฟ้มเหล่านี้จะแสดงรายการไว้ในรูปแบบเวลามาตรฐานสากล (UTC) เมื่อคุณดูข้อมูลแฟ้ม ระบบจะแปลงข้อมูลนี้เป็นเวลาท้องถิ่น เมื่อต้องการค้นหาความแตกต่างระหว่างเวลา UTC กับเวลาท้องถิ่น ใช้แท็บ โซนเวลา ในรายการ วันที่และเวลา ในแผงควบคุม

รุ่นที่ใช้ x86 สำหรับเซิร์ฟเวอร์ Windows 2000, Windows Server 2003 และ Windows XP

ชื่อแฟ้ม

รุ่นของแฟ้ม

ขนาดของแฟ้ม

วันที่

เวลา

แพลตฟอร์ม

System.servicemodel.web.dll

3.5.594.4152

569,344

22-Jul-2009

01:51

x86

รุ่นที่ใช้ x64 สำหรับเซิร์ฟเวอร์ Windows 2000, Windows Server 2003 และ Windows XP

ชื่อแฟ้ม

รุ่นของแฟ้ม

ขนาดของแฟ้ม

วันที่

เวลา

แพลตฟอร์ม

System.servicemodel.web.dll

3.5.594.4152

491,520

22-Jul-2009

02:13

x64

รุ่นที่ใช้ Itanium สำหรับเซิร์ฟเวอร์ Windows 2000, Windows Server 2003 และ Windows XP

ชื่อแฟ้ม

รุ่นของแฟ้ม

ขนาดของแฟ้ม

วันที่

เวลา

แพลตฟอร์ม

System.servicemodel.web.dll

3.5.594.4152

491,520

22-Jul-2009

02:26

IA-64

สถานะ

Microsoft ยืนยันว่านี่เป็นปัญหาในผลิตภัณฑ์ของ Microsoft ซึ่งแสดงไว้ในส่วน "นำไปใช้กับ"

วิธีแก้ปัญหา

เมื่อต้องการหลีกเลี่ยงปัญหานี้ ให้โฮสต์บริการ WCF เองแทนการโฮสต์บริการใน IIS

ข้อมูลเพิ่มเติม

ข้อมูลการถ่ายโอนข้อมูลกองซ้อน

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

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย