Applies To.NET Framework 4.6.2 .NET Framework 4.6.1 .NET Framework 4.6 .NET Framework 4.7 .NET Framework 4.7.1 .NET Framework 4.7.2

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?

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ú.