Проблемы

После установки Августа Предварительный просмотр качества свертки или 11 сентября 2018, платформа.NET Framework обновлениеэкземпляра SqlConnection может создать исключение.

Использование конструктора SqlConnection может привести к трассировке стека, похожее на следующее:

System.Runtime.Serialization.SerializationException    в System.AppDomain.get_Evidence()    в System.AppDomain.get_Evidence()    в System.Configuration.ClientConfigPaths.GetEvidenceInfo (домен приложения appDomain, exePath строка, строка & typeName)    в System.Configuration.ClientConfigPaths.GetTypeAndHashSuffix (домен приложения AppDomain, exePath строка)    в System.Configuration.ClientConfigPaths... ctor (exePath строка, логическое includeUserConfig)    в System.Configuration.ClientConfigPaths.GetPaths (exePath строка, логическое includeUserConfig)    в System.Configuration.ClientConfigurationHost.RequireCompleteInit (IInternalConfigRecord записи)    в System.Configuration.BaseConfigurationRecord.GetSectionRecursive (строка, configKey, getLkg типа Boolean, логическое checkPermission, логическое getRuntimeObject, логическое requestIsHere объекта и результатов, объекты и resultRuntimeObject)    в System.Configuration.BaseConfigurationRecord.GetSection (строка configKey)    в System.Configuration.ConfigurationManager.GetSection (строка sectionName)    в System.Data.SqlClient.SqlConnection... cctor()

Обходное решение

Временное решение 1

В configSection файла App.Config приложения добавьте следующие строки:

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

Примечание Если приложение не содержит файл app.config, рекомендуется создать и развернуть файл app.config, эта информация содержится в configSection.

Если способ 1 не работает, попробуйте способ 2.

Временное решение 2

Определите место в домене приложения, который будет выполняться перед любые объекты были добавлены в логическом контексте вызова. Добавьте код для принудительного ConfigurationManager для повторной загрузки раздел, который не существует в любом из файлов конфигурации. Например:

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

Дополнительные сведения об этой проблеме обратитесь к статье GitHub по устранению рисков: десериализации объектов между доменами приложений.

Статус

Корпорация Майкрософт работает над устранением этой проблемы и будет предоставлять обновления в готовящемся выпуске.

Нужна дополнительная помощь?

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединение к программе предварительной оценки Майкрософт

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?

Спасибо за ваш отзыв!

×