C#操作app.config:移除过时方法,使用 ConfigurationManager
4星 · 超过85%的资源 需积分: 9 79 浏览量
更新于2024-09-21
收藏 295KB PDF 举报
在C#编程中,应用程序配置文件(app.config)是一种存储应用程序运行时设置和配置信息的标准方式。对于C#操作app.config中的数据,主要有以下步骤和知识点:
1. 读取app.config:
使用`System.Configuration.ConfigurationManager`类中的`AppSettings`属性可以读取配置文件中的值。在.NET Framework 2.0之前,可能会使用`System.Configuration.ConfigurationSettings.AppSettings`,但这种做法已被弃用。正确的方法是:
```csharp
string str = ConfigurationManager.AppSettings["DemoKey"];
```
这里`ConfigurationManager.AppSettings`会返回一个`NameValueCollection`对象,通过键名"DemoKey"获取对应的值。
2. 修改app.config:
在.NET Framework 2.0之后,虽然`AppSettings`属性是只读的,但可以使用`OpenExeConfiguration`方法打开配置文件并进行修改。例如,要添加新的键值对:
```csharp
Configuration cfa = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
cfa.AppSettings.Settings.Add("key", "Name"); // 添加新键值对
cfa.AppSettings.Settings["BrowseDir"].Value = "NewValue"; // 修改已有键值对
cfa.Save(); // 保存修改
```
`ConfigurationUserLevel.None`表示在应用程序的整个生命周期中都使用此配置。如果应用程序位于Web应用池中,可能需要使用`WebConfigurationManager`。
3. 添加`system.configuration.dll`引用:
若要使用`ConfigurationManager`,需要确保项目中引用了`system.configuration.dll`。在Visual Studio的解决方案管理器中,右键点击工程名称,选择“添加引用”,然后在`.NET`框架或`TablePages`下的`System.Configuration`项中找到并添加。
4. 注意事项:
- `AppSettings`属性已过时,推荐使用`ConfigurationManager`或`WebConfigurationManager`。
- 修改配置文件时需确保在适当的安全上下文中操作,避免未经授权的修改。
- 只能在应用程序启动时加载配置文件,如果需要在运行时动态更改,可能需要考虑其他策略,如使用`Machine.config`或自定义配置类。
C#操作app.config中的数据涉及读取、修改配置文件的关键在于使用`ConfigurationManager`类及其相关方法,并且需要注意版本兼容性和安全问题。同时,保持对.NET框架组件的正确引用是实现这些功能的基础。
2012-03-19 上传
2020-09-03 上传
点击了解资源详情
2023-05-25 上传
2023-06-06 上传
EterFoolMe
- 粉丝: 2
- 资源: 137
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码