asp.net获取web.config配置信息
1、首先要引用两个命名空间
Code Snippet
- using System.Net.Configuration;
- using System.Web.Configuration;
ps:注意到他们不是同一个没?
2、以下以获取mailSettings为例。
Code Snippet
- <system.net>
- <!--如果是第三方smtp服务器,需要指定userName 和 password,并根据host指定发件人邮件地址from
- 测试发现from值必须是userName值加上指定的smpt服务器才行,而且是必须指定的
- 如果是本机smtp服务器,只需指定defaultCredentials="true"即可-->
- <mailSettings>
- <smtp deliveryMethod="Network" from ="userName@163.com">
- <network host="smtp.163.com" port="25"userName="userName" password="password"/>
- </smtp>
- </mailSettings>
- </system.net>
3,需要用到两个类:
位于System.Net.Configuration下的MailSettingsSectionGroup(其他配置节有相应的SectionGroup)
位于System.Web.Configuration下的WebConfigurationManager
代码如下:
Code Snippet
- Configuration config = WebConfigurationManager.OpenWebConfiguration(HttpContext.Current.Request.ApplicationPath);
- MailSettingsSectionGroup settings = (MailSettingsSectionGroup)config.GetSectionGroup("system.net/mailSettings");
取出定义的值
Code Snippet
- string username= settings.Smtp.Network.UserName;
- string password = settings.Smtp.Network.Password;
这个方法也可以访问其他的配置节 。