Config程序配置文件操作实践及代码详注

本文介绍了.NET框架中System.Configuration命名空间的使用,重点关注ConfigurationManager和WebConfigurationManager类,这两个类用于读取和管理应用程序的配置文件。文章通过实例讲解了如何创建、读取和保存配置文件中的Section、Element和属性,强调了配置文件的结构和规范,以及如何处理预定义和自定义区域。通过学习,读者能够掌握大部分配置文件操作需求。
摘要由CSDN通过智能技术生成

所有与配置文件相关的类:(粗体为一般情况下使用到的类,其它类功能可能在很复杂的情况下才使用到。)

1、ConfigurationManager,这个提供用于打开客户端应用程序集的Configuration对象。
2、WebConfigurationMaManager,这个提供用于打开web应用程序集的Configuration对象。
3、ConfigurationSection ,表示配置文件中的区域对象。
4、ConfigurationSectionCollection ,表示配置文件中相关区域的集合。
5、ConfigurationSectionGroup ,表示配置文件中的一组相关区域的组对象。
6、ConfigurationSectionGroupCollection ,表示 ConfigurationSectionGroup 对象的集合。
7、ConfigurationProperty ,表示区域或元素的属性。
8、ConfigurationPropertyAttribute ,以声明方式指示 .NET Framework,以实例化配置属性。
9、ConfigurationElement ,表示配置文件中的元素对象。
10、ConfigurationElementCollection ,表示元素的集合的对象。

文章中只对粗体的类进行实践,因为已经可以涵盖80%以上的需求。


使用的需求环境:

对于在程序中用到的一些参数配置可能会随着程序的使用而改变,如果将这些参数写在代码里并编译到EXE文件中,那这些参数的改变则无法得到保存。如果下次程序启动的时候想载入改变后的参数配置则必须将这些参数配置写入到一个文件中保存。.NET中提供了一个System.Configuration.dll,这个命名空间下提供的类可以很方便的把这些参数配置读写到XML文件中。当然你也可以使用XML文档的相关操作类来实现这一功能,但如果是自己直接操作XML文档则可能得到的XML配置文件不合规。

可以直接在项目中添加类-->应用程序配置文件 直接向项目中添加一个App.config 的XML文件。当然也可以通过Configuration对象的Save()来将做好的配置对象保存在程序同目录下,它的名称则是programName.exe.config。但在程序调试的时候会出现programName.vshost.exe.config而不会出现programName.exe.config。


首先必须先了解几个名词知识:

Section 区域,它在XML文件中是除根节点外的一级节点,在它下面可以有其它子节点和元素。
Element 元素,它在XML文件中是最基本的单元,它下面不能包含其它元素。

这二个对象都可以用属性,它在XML文件中就是在标签内部的属性内容。


看一下下面这个XML配置文件的内容

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <configSections>
        <section name="section1" type="OracleDataConvertTxt.AppSectionA, OracleDataConvertTxt, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
        <section name="SectionA" type="OracleDataConvertTxt.AppSectionB, OracleDataConvertTxt, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
        <section name="SectionB" type="OracleDataConvertTxt.AppSectionB, OracleDataConvertTxt, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
    </configSections>
    <appSettings>
        <add key="huangbo" value="1234567890" />
    </appSettings>
    <connectionStrings>
        <add name="连接的名称,就类同于Key" connectionString="具体的连接字符串" providerName="与连接字符串一起使用的提供程序的名称。这个有时可以没有" />
    </connectionStrings>
    <section1 KeyName="" Ke
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值