使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

症状

8 月质量汇总预览2018,9 月 11,.NET Framework 更新在安装后,SqlConnection 的实例化可能会引发异常。

使用 SqlConnection 构造函数可能会导致类似于下面的堆栈跟踪:

System.Runtime.Serialization.SerializationException    在 System.AppDomain.get_Evidence()    在 System.AppDomain.get_Evidence()    在 System.Configuration.ClientConfigPaths.GetEvidenceInfo (AppDomain appDomain,字符串 exePath 字符串和类型名称)    在 System.Configuration.ClientConfigPaths.GetTypeAndHashSuffix (应用程序域的应用程序域的字符串 exePath)    在 System.Configuration.ClientConfigPaths.ctor (exePath 字符串、 布尔型 includeUserConfig)    在 System.Configuration.ClientConfigPaths.GetPaths (exePath 字符串、 布尔型 includeUserConfig)    在 System.Configuration.ClientConfigurationHost.RequireCompleteInit (IInternalConfigRecord 记录)    在 System.Configuration.BaseConfigurationRecord.GetSectionRecursive (configKey、 布尔型 getLkg、 布尔型 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 文章缓解: 跨应用程序域的对象的反序列化

状态

Microsoft 正在研究此问题,并将提供在未来版本中的更新。

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×