将设置存储在配置文件中
本文关键字:配置文件 存储 设置 | 更新日期: 2023-09-27 18:31:35
尝试将所有数据保存到配置文件中,然后在运行时读取它并应用于我的程序 - 作为用户首选项。做什么:创建新的配置文件(使用添加新元素>添加congif文件)。在这个文件中放置简单的代码
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSetting>
<add Key="Volume" value="100" />
</appSetting>
</configuration>
创建方法后
public int GetVolumeFromConfigFile()
{
return Convert.ToInt32(ConfigurationManager.AppSettings.Get("Volume"));
}
并在主程序中称它为像
Value = (MyClass.GetVolumeFromConfigFile());
但这不是工作。(在去袋期间,它什么也不返回)
认为这可能是几个原因:
- 我需要添加(我现在不知道以什么方式)要使用的配置文件,因为我有几个文件 *.config - 一个默认(App.exe.config,另一个 - 我创建)
- 我使用不正确的方法从配置文件中获取值
我还阅读了另一种存储应用程序设置的方法,例如将其存储在 *.settings 文件中我做错了什么,更喜欢什么方法?
其他信息 - 使用 net 4.0
编辑
删除我的配置文件,并添加到现有的几行(在 strong>)
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="PlayDemo.SettingsPlayIt" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<userSettings>
<PlayDemo.SettingsPlayIt>
<setting name="Volume" serializeAs="String">
<value>10</value>
</setting>
</PlayDemo.SettingsPlayIt>
</userSettings>
在这里我添加我的钥匙
<appSetting>
<add key="Volume" value="100" />
</appSetting>
</configuration>
试试这个:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="Volume" value="100" />
</appSettings>
</configuration>
和
return Convert.ToInt32(ConfigurationManager.AppSettings["Volume"]);
appSettings 是键值对,因此您可以像访问字典中的值一样访问它
如果要使用单独的配置文件,请尝试以下操作:
Dim config As System.Configuration.Configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None)
config.AppSettings.File = "yourFileName"'tell Configuration what file to read
config.Save(ConfigurationSaveMode.Modified) ' save the Configuration setting
ConfigurationManager.RefreshSection("appSettings") ' update just the <appSettings> node
我真的很喜欢以下技术,使用 ConfigurationSection
.这使您可以轻松操作配置。但它在前期更具体。
http://msdn.microsoft.com/en-us/library/2tw134k3%28v=vs.90%29.aspx