當我們開發系統的時候要把一部分設置提取到外部的時候
這個是最簡單的可以設置和讀取的用戶設置
程序中可以用key去讀取
string objContainer = ConfigurationManager
簡單實用但是不夠優雅
首先在configSections節點配置自己的配置解析類
那麼如何來解析這段配置呢?有兩個辦法
方法
實現IConfigurationSectionHandler接口來自己解析配置文件的xml文件
public class ObjectContainerElement
{
public string Provider {get;set;}
public string IocModule {get; set;}
}
public class AgileFRConfigurationHandler: IConfigurationSectionHandler
{
public object Create(object parent
{
var node =section
if (node
throw new ConfigurationErrorsException(
var config = new ObjectContainerElement();
foreach (XmlAttribute attr in node
{
switch (attr
{
case
config
break;
case
config
break;
default:
throw new ConfigurationErrorsException(
}
}
}
return config;
}
//使用
var config = ConfigurationManager
這個方法看上去就略屌了
方法
繼承ConfigurationSection類
public class ObjectContainerElement : ConfigurationElement
{
[ConfigurationProperty(
public string Provider
{
get
{
return (string)this[
}
set
{
this[
}
}
[ConfigurationProperty(
public string IocModule
{
get
{
return (string)this[
}
set
{
this[
}
}
}
///
/// 配置處理類
///
public class AgileFRConfigurationHandler : ConfigurationSection
{
[ConfigurationProperty(
public ObjectContainerElement ObjectContainer
{
get
{
return (ObjectContainerElement)this[
}
set
{
this[
}
}
}
//使用
var configurationHandler = (AgileFRConfigurationHandler)ConfigurationManager
var objectContainer=configurationHandler
這個方法簡單優雅
這個方法我不太喜歡
From:http://tw.wingwit.com/Article/program/net/201311/12163.html