Simptome

După ce instalați August Preview de calitate set sau 11 septembrie 2018, actualizarea .NET Framework, instanţierea de SqlConnection poate throw o excepție.

Utilizarea unui constructor SqlConnection poate duce la o stivei care seamănă cu următorul:

System.Runtime.Serialization.SerializationException    la System.AppDomain.get_Evidence()    la System.AppDomain.get_Evidence()    la System.Configuration.ClientConfigPaths.GetEvidenceInfo (AppDomain appDomain, String exePath, String & typeName)    la System.Configuration.ClientConfigPaths.GetTypeAndHashSuffix (AppDomain appDomain, String exePath)    la System.Configuration.ClientConfigPaths... ctor (String exePath, Boolean includeUserConfig)    la System.Configuration.ClientConfigPaths.GetPaths (String exePath, Boolean includeUserConfig)    la System.Configuration.ClientConfigurationHost.RequireCompleteInit (IInternalConfigRecord înregistrare)    la System.Configuration.BaseConfigurationRecord.GetSectionRecursive (String configKey, Boolean getLkg, Boolean checkPermission, Boolean getRuntimeObject, Boolean requestIsHere, rezultate, & obiect obiect & resultRuntimeObject)    la System.Configuration.BaseConfigurationRecord.GetSection (String configKey)    la System.Configuration.ConfigurationManager.GetSection (String sectionName)    la System.Data.SqlClient.SqlConnection... cctor()

Soluție de evitare

Soluție 1

Adăugați următoarele linii în configSection fișierului App.Config aplicației:

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

Notă Dacă aplicația nu include un fișier app.config, se recomandă să creați și să implementați un fișier app.config care conține aceste informații în configSection.

Dacă soluția 1 nu funcționează, încercați soluția 2.

Soluție 2

Identificaţi un loc în domeniul de aplicații care se execută înainte de orice obiecte au fost adăugate la contextul logic apel. Adăugați cod pentru a impune ConfigurationManager pentru a încerca să încarce o secțiune care nu există în orice fișiere de configurare. De exemplu:

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

Pentru mai multe informații despre această problemă, consultați articolul GitHub afluxului: Deserialization de obiecte în domenii app.

Stare

Microsoft cercetează această problemă și va furniza o actualizare într-o versiune viitoare.

Aveți nevoie de ajutor suplimentar?

Extindeți-vă competențele

Explorați instruirea >

Fiți primul care obține noile caracteristici

Alăturați-vă la Microsoft Insider >

Au fost utile aceste informații?

Cât de mulțumit sunteți de calitatea limbajului?
Ce v-a afectat experiența?

Vă mulțumim pentru feedback!

×