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

Sintomi

Dopo aver installato l'Anteprima di agosto di Rollup di qualità o 11 settembre 2018, aggiornamento di.NET Framework, creazione di istanze di SqlConnection può generare un'eccezione.

Utilizzo di un costruttore SqlConnection può comportare un'analisi dello stack analogo al seguente:

SerializationException    in System.AppDomain.get_Evidence()    in System.AppDomain.get_Evidence()    in System.Configuration.ClientConfigPaths.GetEvidenceInfo (AppDomain appDomain, String percorsoeseguibile, String & typeName)    in System.Configuration.ClientConfigPaths.GetTypeAndHashSuffix (AppDomain appDomain, String percorsoeseguibile)    in System.Configuration.ClientConfigPaths... costruttore (percorsoeseguibile String, Boolean includeUserConfig)    in System.Configuration.ClientConfigPaths.GetPaths (stringa percorsoeseguibile, Boolean includeUserConfig)    in System.Configuration.ClientConfigurationHost.RequireCompleteInit (IInternalConfigRecord record)    in System.Configuration.BaseConfigurationRecord.GetSectionRecursive (String configKey, getLkg booleano, checkPermission Boolean, Boolean getRuntimeObject, requestIsHere booleano, risultati & oggetto oggetto & resultRuntimeObject)    in System.Configuration.BaseConfigurationRecord.GetSection (String configKey)    in System.Configuration.ConfigurationManager.GetSection (stringa sectionName)    in corrispondenza di SqlConnection.. cctor()

Soluzione alternativa

Soluzione alternativa 1

Aggiungere le seguenti righe di configSection del file app. config dell'applicazione:

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

Nota Se l'applicazione non include un file app. config, si consiglia di creare e distribuire un file app. config che contiene queste informazioni di configSection.

Se la soluzione 1 non funziona, provare a soluzione 2.

Soluzione 2

Identificare una posizione nel dominio dell'applicazione da eseguire prima tutti gli oggetti sono stati aggiunti al contesto di chiamata logico. Aggiungere il codice per forzare ConfigurationManager per tentare di caricare una sezione che non esiste alcun file di configurazione. Per esempio:

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

Per ulteriori informazioni su questo problema, vedere l'articolo di GitHub attenuazione: deserializzazione di oggetti tra domini applicazione.

Stato

Microsoft sta lavorando il problema e fornirà un aggiornamento in una versione futura.

Serve aiuto?

Vuoi altre opzioni?

Esplorare i vantaggi dell'abbonamento e i corsi di formazione, scoprire come proteggere il dispositivo e molto altro ancora.

Le community aiutano a porre e a rispondere alle domande, a fornire feedback e ad ascoltare gli esperti con approfondite conoscenze.