创建自定义配置结

介绍:

Web.Config文件由许多不同的配置结组成。用户可以根据程序需要进行配置。在

ASP.NET 2.0中用户可以创建自定义的配置结。本文将对此进行介绍

继承ConfiguraitonSection

我将创建一个简单的配置结。该配置结是一个允许用户书写名称的数据访问类。首先创建一个继承了ConfiguraitonSection的类。代码如下:

public class MyDataAccessSection : ConfigurationSection

    {

 

MyDataAccessSection类包含一个名为dataAccessClassName的属性,该属性包含数据访问类的名称。下面是MyDataAccessSection类的完整代码
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->

using System;

using System.Data;

using System.Configuration;

using System.Web;

 

namespace MyClassLibrary

{

    public class MyDataAccessSection : ConfigurationSection

    {

        private static ConfigurationProperty propDataAccessClass = null;

 

        public MyDataAccessSection()

        {

            MyDataAccessSection.propDataAccessClass = new ConfigurationProperty(

                "dataAccessClassName", typeof(string), "MyDataAccessClass", ConfigurationPropertyOptions.IsRequired);

 

        }

 

        [ConfigurationProperty("dataAccessClassName")]

        public string DataAccessClassName

        {

            get { return (string)base[MyDataAccessSection.propDataAccessClass]; }

            set { base[MyDataAccessSection.propDataAccessClass] =  value; }

        }

 

    }

}

 

 . 

 下面逐步分析代码。在构在函数汇总定义了一个ConfigurationProperty属性的字段。名称为”dataAccessClassName”,类型为string,默认值:”MyDataAccessClass”. ConfigurationPropertyOptions设置为”IsRequired”,表示属性为必须。然后定义了名位DataAccessClassName的属性,[ConfigurationProperty("dataAccessClassName")]修饰

设置Web.Config文件:

 

使用MyDataAccessSection前想要在Web.Config文件中进行设置。需要告知web.config你所使用的自定义配置结。下面代码演示如何注册一个自定义配置结

      <configSections>

            <section name="dataAccessSection" type="MyClassLibrary.MyDataAccessSection,MyClassLibrary"/>

      </configSections>

  Name属性设置data access配置结的名称,type属性设置配置界的类型,MyClassLibrary.MyDataAccessSection表示类,后面的MyClassLibrary是程序集的名称

 声明一个自定义配置结

Declaring the Custom Section:

声明一个自定义配置结非常简单,只需要设置名称和属性 

        <dataAccessSection dataAccessClassName="GridViewGuyDataAccessClass">  

   

  </dataAccessSection>

 

访问自定义配置结:

访问自定义配置结也很简单,下面的代码演示如何访问信息
<!--[if !supportLineBreakNewLine]-->
<!--[endif]-->

            // Get the custom section

      MyDataAccessSection section = (MyDataAccessSection) ConfigurationManager.GetSection("dataAccessSection");

 

      // display the custom section

      Response.Write(section.DataAccessClassName);

 

原文:Creating Custom Sections in Web.config
posted on 2006-07-20 21:06  stswordman  阅读(558)  评论(0编辑  收藏  举报