我正在使用C#和.NET Framework 4.7开发WinForm应用程序。
我想要打开一个Web.config文件,读取它的appSetting部分并进行修改。
为了打开它,我使用以下代码:
System.Configuration.Configuration config = WebConfigurationManager.OpenWebConfiguration(null);
它打开了它,但是当我尝试使用以下代码获取密钥时:
string[] keys = config.AppSettings.Settings.AllKeys;
我可以帮助您翻译这段内容。该段内容与IT技术相关。
我得到了一个空数组。
这是appSetting部分:
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
<connectionStrings>
</connectionStrings>
<appSettings>
<add key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
<add key="MinRemainingCodes" value="100" />
<!-- Others keys -->
</appSettings>
</configuration>
也许问题在于它没有打开文件,但在文档中说:
也许我不明白配置文件的虚拟路径。如果为 null,则打开根 Web.config 文件。
root
的含义,因为程序和 Web.config
文件在同一个文件夹中。我做错了什么?
string[] keys = ConfigurationManager.AppSettings.AllKeys
。 - A_Sk