Net应用程序配置机制跟程序集引用大致类似,均具有继承性,如iis几乎每个应用程序都会有一个Web.config,比如我们使用vs2012以上版本创建一个web应用程序会自带一个web.config配置文件,这个配置文件属于整个应用程序全局配置文件,再有某些个别目录下也会存在web.config这样的配置文件,连名字都跟应用程序配置文件相同,那么他们看起来重复出现,到底是为何?

  Net的配置具有继承性,怎么理解?比如当前文件夹所拥有的配置则作用范围仅为当前文件夹,如果没有那么他们直接寻找应用程序根目录下config文件并当作自己的配置文件直到应用程序根目录,其查找顺序由下往上,由近及远,与dll引用一样本地找不到就去GAC找直到找不到;其中IIS中各个Web.Config继承性就非常的典型,所以这里也不再举例

  SuperSocket使用了Net配置系统,而不是我们平常的一个对象序列化成一个xml文件的私有配置,对比起来减少了配置文件读写次数,且net配置系统本就如此强大 

 

二 SuperSocket私有配置扩展

2.1 TypeProvider  

SuperSocket对net配置元素进行一次继承,其代码如下

 1 public class TypeProvider : ConfigurationElement, ITypeProvider
 2     {
 3         /// <summary>
 4         /// Gets the name.
 5         /// </summary>
 6         [ConfigurationProperty("name", IsRequired = true)]
 7         public string Name
 8         {
 9             get { return this["name"] as string; }
10         }
11 
12         /// <summary>
13         /// Gets the type.
14         /// </summary>
15         [ConfigurationProperty("type", IsRequired = true)]
16         public string Type
17         {
18             get { return this["type"] as string; }
19         }
20     }
View Code

相关文章:

  • 2022-12-23
  • 2022-01-10
  • 2021-12-08
  • 2022-12-23
  • 2021-07-23
  • 2021-08-07
  • 2021-11-19
  • 2021-06-30
猜你喜欢
  • 2022-12-23
  • 2021-10-11
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案