Applies To.NET Framework 3.5 Service Pack 1

Triệu chứng

Xem xét tình huống sau:

  • Bạn tạo một dịch vụ Windows Communication Foundation (WCF) được lưu trữ trong dịch vụ thông tin Internet (IIS).

  • Bạn sử dụng lớp WebScriptEnablingBehavior trong dịch vụ WCF.

  • Bạn cấu hình dịch vụ WCF sử dụng chứng chỉ máy khách xác thực Secure Socket Layer (SSL). Để thực hiện việc này, bạn đặt thuộc tính ClientCredentialType trong tệp Web.config chứng chỉ.

Trong trường hợp này, khi bạn chạy dịch vụ WCF, ngoại lệ System.NotSupportedException và bạn nhận được thông báo lỗi có giống như sau:

Thiết lập SSL cho dịch vụ 'None' không khớp với những IIS 'Ssl, SslNegotiateCert, SslRequireCert, SslMapCert, Ssl128'.

Nguyên nhân

Sự cố này xảy ra do một số thuộc tính của phiên bản HttpTransportBindingElement không được sao chép vào điểm cuối proxy javascript tự động tạo ra.

Giải pháp

Microsoft hiện đã cung cấp bản cập nhật nóng được hỗ trợ. Tuy nhiên, nó là nhằm khắc phục chỉ sự cố mà bài viết này mô tả. Áp dụng cho các hệ thống đang gặp sự cố cụ thể này.Để khắc phục sự cố này, hãy liên hệ với dịch vụ hỗ trợ khách hàng Microsoft để lấy hotfix. Để biết danh sách đầy đủ số điện thoại Dịch vụ hỗ trợ khách hàng của Microsoft và thông tin về chi phí hỗ trợ, ghé thăm Web site sau của Microsoft:

http://support.microsoft.com/contactus/?ws=supportLưu ý Trong trường hợp đặc biệt, chi phí thường phát sinh cho cuộc gọi hỗ trợ có thể bị hủy bỏ nếu chuyên viên hỗ trợ Microsoft xác định rằng một Cập Nhật cụ thể sẽ giải quyết vấn đề của bạn. Chi phí hỗ trợ thông thường sẽ áp dụng cho các vấn đề không phù hợp với bản Cập Nhật cụ thể trong câu hỏi và câu hỏi hỗ trợ bổ sung.

Điều kiện tiên quyết

Bạn phải có các .NET Framework 3.5 gói dịch vụ 1 (SP1) được cài đặt để áp dụng hotfix này.

Yêu cầu khởi động lại

Bạn không phải khởi động lại máy tính sau khi bạn cài đặt hotfix.

Thông tin thay thế cập nhật nóng

Hotfix này không thay thế bất kỳ hotfix nào khác. Phiên bản tiếng Anh của cập nhật nóng này có các thuộc tính tệp (hoặc thuộc tính tệp mới hơn) được liệt kê trong bảng sau. Ngày và giờ của các tệp này được liệt kê theo Giờ Quốc tế Phối hợp (UTC). Khi bạn xem thông tin về tệp, ngày và giờ được chuyển đổi thành giờ địa phương. Để tìm sự khác nhau giữa UTC và giờ địa phương, sử dụng tab Múi Giờ trong mục Ngày và Giờ trong Pa-nen điều khiển.

x86 dựa trên phiên bản Windows Server 2000, Windows Server 2003 và Windows XP

Tên tệp

Phiên bản tệp

Kích thước tệp

Ngày

Giờ

Nền tảng

System.servicemodel.web.dll

3.5.594.4152

569,344

22-Jul-2009

01:51

x86

x64 dựa trên phiên bản Windows Server 2000, Windows Server 2003 và Windows XP

Tên tệp

Phiên bản tệp

Kích thước tệp

Ngày

Giờ

Nền tảng

System.servicemodel.web.dll

3.5.594.4152

491,520

22-Jul-2009

02:13

x64

Phiên bản dựa vào Itanium cho Windows Server 2000, Windows Server 2003 và Windows XP

Tên tệp

Phiên bản tệp

Kích thước tệp

Ngày

Giờ

Nền tảng

System.servicemodel.web.dll

3.5.594.4152

491,520

22-Jul-2009

02:26

IA-64

Trạng thái

Microsoft đã xác nhận rằng đây là sự cố trong sản phẩm của Microsoft được liệt kê trong phần "Áp dụng cho".

Giải pháp

Để khắc phục sự cố này, tự lưu trữ dịch vụ WCF thay vì lưu trữ dịch vụ IIS.

Thông tin

Ngăn xếp kết xuất thông tin

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

Bạn cần thêm trợ giúp?

Bạn muốn xem các tùy chọn khác?

Khám phá các lợi ích của gói đăng ký, xem qua các khóa đào tạo, tìm hiểu cách bảo mật thiết bị của bạn và hơn thế nữa.

Cộng đồng giúp bạn đặt và trả lời các câu hỏi, cung cấp phản hồi và lắng nghe ý kiến từ các chuyên gia có kiến thức phong phú.