Ngoại lệ instantiation SqlConnection trên .NET 4.6 và bản Cập Nhật ngày ngày 2018 .NET Framework

Triệu chứng

Sau khi bạn cài đặt Xem trước ngày chất lượng tổng hợp hoặc 11 tháng 2018, bản Cập Nhật .NET Framework, instantiation SqlConnection có thể ném một ngoại lệ.

Sử dụng xây dựng SqlConnection có thể dẫn đến một dấu vết xếp chồng giống như sau:

System.Runtime.Serialization.SerializationException    tại System.AppDomain.get_Evidence()    tại System.AppDomain.get_Evidence()    tại System.Configuration.ClientConfigPaths.GetEvidenceInfo (AppDomain appDomain, Chuỗi exePath, Chuỗi & typeName)    tại System.Configuration.ClientConfigPaths.GetTypeAndHashSuffix (AppDomain appDomain, Chuỗi exePath)    tại System.Configuration.ClientConfigPaths... Victor (chuỗi exePath, Boolean includeUserConfig)    tại System.Configuration.ClientConfigPaths.GetPaths (chuỗi exePath, Boolean includeUserConfig)    tại System.Configuration.ClientConfigurationHost.RequireCompleteInit (IInternalConfigRecord hồ sơ)    tại System.Configuration.BaseConfigurationRecord.GetSectionRecursive (chuỗi configKey Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, đối tượng và kết quả, đối tượng & resultRuntimeObject)    tại System.Configuration.BaseConfigurationRecord.GetSection (chuỗi configKey)    tại System.Configuration.ConfigurationManager.GetSection (chuỗi sectionName)    tại System.Data.SqlClient.SqlConnection... cctor()

Cách giải quyết

Giải pháp 1

Thêm dòng sau trong configSection file App.Config của ứng dụng:

<section name="SqlColumnEncryptionEnclaveProviders" type="System.Data.SqlClient.SqlColumnEncryptionEnclaveProviderConfigurationSection, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />

Chú ý Nếu ứng dụng của bạn không có tệp app.config, chúng tôi khuyên bạn nên tạo tệp app.config chứa thông tin này trong phần configSection triển khai.

Nếu giải pháp 1 không hoạt động, hãy thử giải pháp 2.

Giải pháp 2

Xác định nơi miền ứng dụng chạy trước khi bất kỳ đối tượng đã được thêm vào bối cảnh gọi hợp lý. Thêm mã lực ConfigurationManager để tải một phần không có trong bất kỳ tập tin cấu hình. Ví dụ:

System.Configuration.ConfigurationManager.GetSection("SectionNameThatDoesNotExistInAnyConfigurationFile");

Để biết thêm thông tin về vấn đề này xem bài viết GitHub thiểu: Deserialization vật qua ứng dụng miền.

Trạng thái

Microsoft đang nghiên cứu vấn đề này và sẽ cung cấp bản Cập Nhật trong phiên bản phát hành sắp tới.

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

Phát triển các kỹ năng của bạn
Khám phá nội dung đào tạo
Sở hữu tính năng mới đầu tiên
Tham gia Microsoft dùng nội bộ

Thông tin này có hữu ích không?

Cảm ơn phản hồi của bạn!

Cảm ơn bạn đã phản hồi! Để trợ giúp tốt hơn, có lẽ chúng tôi sẽ kết nối bạn với một trong những nhân viên hỗ trợ Office của chúng tôi.

×