asp.net获取web.config配置信息

1、首先要引用两个命名空间

Code Snippet
  1. using System.Net.Configuration;
  2. using System.Web.Configuration;

ps:注意到他们不是同一个没?

2、以下以获取mailSettings为例。

Code Snippet
  1. <system.net>
  2.   <!--如果是第三方smtp服务器,需要指定userName 和 password,并根据host指定发件人邮件地址from
  3.       测试发现from值必须是userName值加上指定的smpt服务器才行,而且是必须指定的
  4.       如果是本机smtp服务器,只需指定defaultCredentials="true"即可-->
  5.   <mailSettings>
  6.       <smtp deliveryMethod="Network"   from ="userName@163.com">
  7.         <network    host="smtp.163.com"   port="25"userName="userName" password="password"/>
  8.     </smtp>
  9.   </mailSettings>
  10. </system.net>

3,需要用到两个类:

位于System.Net.Configuration下的MailSettingsSectionGroup(其他配置节有相应的SectionGroup)

位于System.Web.Configuration下的WebConfigurationManager

代码如下:

Code Snippet
  1. Configuration config = WebConfigurationManager.OpenWebConfiguration(HttpContext.Current.Request.ApplicationPath);
  2.    MailSettingsSectionGroup settings = (MailSettingsSectionGroup)config.GetSectionGroup("system.net/mailSettings");

取出定义的值

Code Snippet
  1. string username=     settings.Smtp.Network.UserName;
  2. string password = settings.Smtp.Network.Password;

这个方法也可以访问其他的配置节 。

原文地址:https://www.cnblogs.com/wuya/p/1636808.html