配置节点简单使用
在web开发中一般我们读取web.config里面的信息,都是通过
WebConfigurationManager.AppSettings
WebConfigurationManager.ConnectionStrings
或者时候1.1里面老的方式实现IConfigurationSection,其实都无所谓了。
这里主要讨论一下使用ConfigurationSection抽象类的方式,定义配置节,可以实现多配置节,其实和IConfigurationSection一样,没感觉有什么很大区别。做个笔记而已了
首先web.config
test Settings1 = (test)WebConfigurationManager.GetSection("mqtest");
Settings1.tt = 100;
==============直接取属性
<system.web>
<httpRuntime maxRequestLength="4096" executionTimeout="120" ></httpRuntime>
</system.web>
Configuration config = WebConfigurationManager.OpenWebConfiguration(this.Request.ApplicationPath);
HttpRuntimeSection myHttpRuntimeSection = (HttpRuntimeSection)config.GetSection("system.web/httpRuntime");
demo
WebConfigurationManager.AppSettings
WebConfigurationManager.ConnectionStrings
或者时候1.1里面老的方式实现IConfigurationSection,其实都无所谓了。
这里主要讨论一下使用ConfigurationSection抽象类的方式,定义配置节,可以实现多配置节,其实和IConfigurationSection一样,没感觉有什么很大区别。做个笔记而已了
首先web.config
1
<configSections>
2
<section name="mqtest" type="test, __code"/>
3
</configSections>
4
<mqtest>
5
<aaForm asdfa="10"></aaForm>
6
</mqtest>
调用![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/None.gif)
1![](/Images/OutliningIndicators/None.gif)
2
/// <summary>
3
/// 配置节的访问
4
/// </summary>
5
public class test : ConfigurationSection
6
{
7
//元素
8
[ConfigurationProperty("aaForm", IsRequired = true)]
9
public aaFormElement aaForm
10
{
11
get { return (aaFormElement)base["aaForm"]; }
12
}
13![](/Images/OutliningIndicators/InBlock.gif)
14
[ConfigurationProperty("time")]
15
public DateTime Time
16
{
17
get { return (DateTime)this["time"]; }
18
set { this["time"] = value; }
19
}
20![](/Images/OutliningIndicators/InBlock.gif)
21
[ConfigurationProperty("tt")]
22
public int tt
23
{
24
get { return (int)this["tt"]; }
25
set { this["tt"] = value; }
26
}
27![](/Images/OutliningIndicators/InBlock.gif)
28
public override bool IsReadOnly()
29
{
30
return false;
31
}
32
}
33![](/Images/OutliningIndicators/None.gif)
34
///配置节文件中的配置元素
35
public class aaFormElement : ConfigurationElement
36
{
37![](/Images/OutliningIndicators/InBlock.gif)
38
[ConfigurationProperty("asdfa", DefaultValue = "10")]
39
public string aaaa
40
{
41
get { return (string)base["asdfa"]; }
42
set { base["asdfa"] = value; }
43
}
44
}
45![](/Images/OutliningIndicators/None.gif)
页面访问![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
3
![](/Images/OutliningIndicators/InBlock.gif)
4
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
7
![](/Images/OutliningIndicators/InBlock.gif)
8
![](/Images/OutliningIndicators/InBlock.gif)
9
![](/Images/OutliningIndicators/InBlock.gif)
10
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
11
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
12
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
13
![](/Images/OutliningIndicators/InBlock.gif)
14
![](/Images/OutliningIndicators/InBlock.gif)
15
![](/Images/OutliningIndicators/InBlock.gif)
16
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
17
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
18
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
19
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
20
![](/Images/OutliningIndicators/InBlock.gif)
21
![](/Images/OutliningIndicators/InBlock.gif)
22
![](/Images/OutliningIndicators/InBlock.gif)
23
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
24
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
25
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
26
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
27
![](/Images/OutliningIndicators/InBlock.gif)
28
![](/Images/OutliningIndicators/InBlock.gif)
29
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
30
![](/Images/OutliningIndicators/InBlock.gif)
31
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
32
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
33
![](/Images/OutliningIndicators/None.gif)
34
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
35
![](/Images/OutliningIndicators/None.gif)
36
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
37
![](/Images/OutliningIndicators/InBlock.gif)
38
![](/Images/OutliningIndicators/InBlock.gif)
39
![](/Images/OutliningIndicators/InBlock.gif)
40
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
41
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
42
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
43
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
44
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
45
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
==============直接取属性
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
![](/Images/OutliningIndicators/None.gif)
HttpRuntimeSection myHttpRuntimeSection = (HttpRuntimeSection)config.GetSection("system.web/httpRuntime");
demo