症状
当开发人员使用 Configuration.Save ( 时。) /Configuration.SaveAs (.) Microsoft .NET Framework 4.7 中用于保存/替代 ASP.NET/IIS (Internet 信息服务器 ) 应用程序的web.config文件的方法,它们可能会注意到,正在向 web.config 文件添加一个新的空Windows 窗体应用程序特定节 <System.Windows.Forms.ApplicationConfigurationSection>,并且无法重新加载其应用程序。
原因
在 Microsoft .NET Framework 4.7 中添加 HDPI ( 高每英寸点数) 支持Windows 窗体应用程序时,Windows 窗体团队引入了新的配置节 <System.Windows.Forms.ApplicationConfigurationSection>在应用程序配置 (app.config) 文件中,开发人员可以通过该文件自定义 HDPI 特定功能的应用程序。
此新部分目前仅用于 Windows 窗体 应用程序和自定义仅在 Microsoft .NET Framework 4.7 中添加的 HDPI 功能。 因此,此新部分的声明发生在运行时和Windows 窗体应用程序中,仅 (,而不是在 machine.config文件) 中声明它的一般做法。 当开发人员使用 Configuration.Save ( 时。) /Configuration.SaveAs (.) 方法中,它们会看到此运行时声明节的空定义被添加到正在保存/创建/重写的配置文件中。 当使用此新保存/创建/重写配置文件重新加载非Windows 窗体应用程序 (ASP.NET/IIS) 时,应用程序可能无法重新加载,因为缺少部分声明。
解决方法
开发人员/用户可以安全地从 web.config 文件中删除此空节 <System.Windows.Forms.ApplicationConfigurationSection> 定义, (除Windows 窗体用户界面) 以外的任何其他应用程序不使用它,并尝试重新加载其应用程序。 从文件中删除此空节不会影响应用程序的功能行为。
状态
Microsoft已确认,这是“适用于”部分中列出的Microsoft产品中的问题,Microsoft正在研究即将推出的产品版本中的解决方案。