配置节点简单使用
在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>
调用
<configSections>2
<section name="mqtest" type="test, __code"/>3
</configSections>4
<mqtest>5
<aaForm asdfa="10"></aaForm>6
</mqtest> 1
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
14
[ConfigurationProperty("time")]
15
public DateTime Time
16
{
17
get { return (DateTime)this["time"]; }
18
set { this["time"] = value; }
19
}
20
21
[ConfigurationProperty("tt")]
22
public int tt
23
{
24
get { return (int)this["tt"]; }
25
set { this["tt"] = value; }
26
}
27
28
public override bool IsReadOnly()
29
{
30
return false;
31
}
32
}
33
34
///配置节文件中的配置元素
35
public class aaFormElement : ConfigurationElement
36
{
37
38
[ConfigurationProperty("asdfa", DefaultValue = "10")]
39
public string aaaa
40
{
41
get { return (string)base["asdfa"]; }
42
set { base["asdfa"] = value; }
43
}
44
}
45
页面访问
2
/// <summary>3
/// 配置节的访问4
/// </summary>5
public class test : ConfigurationSection6
{7
//元素8
[ConfigurationProperty("aaForm", IsRequired = true)]9
public aaFormElement aaForm10
{11
get { return (aaFormElement)base["aaForm"]; }12
}13

14
[ConfigurationProperty("time")]15
public DateTime Time16
{17
get { return (DateTime)this["time"]; }18
set { this["time"] = value; }19
}20

21
[ConfigurationProperty("tt")]22
public int tt23
{24
get { return (int)this["tt"]; }25
set { this["tt"] = value; }26
}27

28
public override bool IsReadOnly()29
{30
return false;31
}32
}33

34
///配置节文件中的配置元素35
public class aaFormElement : ConfigurationElement36
{37

38
[ConfigurationProperty("asdfa", DefaultValue = "10")]39
public string aaaa40
{41
get { return (string)base["asdfa"]; }42
set { base["asdfa"] = value; }43
}44
}45

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


浙公网安备 33010602011771号