.NET的应用程序配置文件,使用的是XML格式。相对INI文件来说,它的功能要强上不少,而且具有很强的可扩展性。它的缺点是不能直接进行写操作,也就是说,不能直接在程序中修改配置文件的数据(当然不是指不能,不过不是本文讨论的范围)。本文主要目的是探讨如何扩展配置文件,并在其加入各种自定义配置信息。
   
    1. 使用
        简单的配置信息,可以直接放入标记中。如:
讲述如何使用.NET的配置文件<xml version="1.0" encoding="utf-8"?>
讲述如何使用.NET的配置文件  <appSettings>
讲述如何使用.NET的配置文件 <add key="LogFile" value="d:\log\debug.log"/>
讲述如何使用.NET的配置文件  appSettings>  
讲述如何使用.NET的配置文件</configuration>
    相应访问代码如下:      
讲述如何使用.NET的配置文件string fileName = System.Configuration.ConfigurationSettings.AppSettings.Get("LogFile");
     2. 自定义配置节(section)名称
        比如,我们要使用下面的配置结构,将配置信息归类分组:
讲述如何使用.NET的配置文件<?xml version="1.0" encoding="utf-8"?>
讲述如何使用.NET的配置文件<configuration>
讲述如何使用.NET的配置文件<myConfig>
讲述如何使用.NET的配置文件  <myDictionary>
讲述如何使用.NET的配置文件    <add key="Area" value="Fuzhou"/>
讲述如何使用.NET的配置文件    <add key="Device" value="Printer"/>
讲述如何使用.NET的配置文件    <add key="Customer" value="Muf"/>
讲述如何使用.NET的配置文件  </myDictionary>
讲述如何使用.NET的配置文件  <myNameValue>
讲述如何使用.NET的配置文件    <add key="Area" value="Fuzhou"/>
讲述如何使用.NET的配置文件    <add key="Device" value="Printer"/>
讲述如何使用.NET的配置文件    <add key="Customer" value="Muf"/>
讲述如何使用.NET的配置文件  </myNameValue>
讲述如何使用.NET的配置文件  <myInfo
讲述如何使用.NET的配置文件    Area="Fuzhou" Device="Printer" Customer="Muf"
讲述如何使用.NET的配置文件  />
讲述如何使用.NET的配置文件</myConfig>
讲述如何使用.NET的配置文件</configuration>
        但是光这样子说明是不行的。没有声明,是不能使用自定义的配置段。我们必须要在配置文件前面加入声明:
<configSections>
讲述如何使用.NET的配置文件    <sectionGroup name="myConfig">
讲述如何使用.NET的配置文件         <section name="myDictionary"
讲述如何使用.NET的配置文件            type="System.Configuration.NameValueSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
讲述如何使用.NET的配置文件        <section name="myNameValue"
讲述如何使用.NET的配置文件            type="System.Configuration.DictionarySectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
讲述如何使用.NET的配置文件        <section name="myInfo"
讲述如何使用.NET的配置文件            type="System.Configuration.SingleTagSectionHandler, System, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
/>
讲述如何使用.NET的配置文件    </sectionGroup>
讲述如何使用.NET的配置文件  </configSections>  
    声明和配置的关系,示意图如下:
讲述如何使用.NET的配置文件        
    由图上可以看出,NameValueSectionHandler和DictionarySectionHandler在定义配置文件的内容形式上是一样的,都是用来设置内容的。只是返回到C#中的类不太一样,可以参考下面的代码示例。
    另外,如果不关心Handler类的版本等信息,可以直接省略。如NameValueSectionHandler可以直接如下声明:
讲述如何使用.NET的配置文件<section name="myDictionary"            type="System.Configuration.NameValueSectionHandler, System" />
根据上面的例子,我们可以使用IConfigurationSectionHandler来实现任意的配置文件结构。

相关文章:

  • 2021-05-21
  • 2022-12-23
  • 2021-09-08
  • 2022-12-23
  • 2021-11-30
  • 2022-12-23
  • 2021-08-26
猜你喜欢
  • 2022-12-23
  • 2021-10-22
  • 2022-02-19
相关资源
相似解决方案