原文地址:http://www.aspstat.com/84
这篇文章主要讲叙了,如何通过配置文件(web.config)实现邮件发送的相关配置,以及如何根据配置发送电子邮件。
适用的框架:asp.net framework 2.0/.net framework3.0/.net framework3.5
在web.config里设置.net framework的网络连接
XML/HTML代码
<system.net>
</system.net>
如下:设置stmp邮件发送的配置
XML/HTML代码
//父元素:configuration(提供所有名称空间的配置)
<system.net>
//这里还可以加入如下元素的设置
//authenticationModules:设置用来验证WEB请求的模块
//connectionManagement:设置WEB服务器最大连接数
//defaultProxy:设置http的代理服务器
//mailSettings:配置smtp
//requestCaching:控制网络请求缓存机制
//settings:为System.NET配置基本网络选项
//<webRequestModules>元素(网络设置):指定模块从WEB服务器请求信息。
<mailSettings>
//deliveryMethod设置邮件发送方式,这里是网络形式
<smtp deliveryMethod="Network" from="[email protected]" >
//host邮件发送服务器
//userName发送邮件时,用来进行身份验证的用户名
//password如下验证时的密码
<network host="smtp.yyy.com" userName="[email protected]" password="zzzzzzz" />
</smtp>
</mailSettings>
</system.net>
以编程的方式获取web.config里的smtp配置
NetSectionGroup类
命名空间
System.Net.Configuration:为应用程序提供了以编程方式访问和更新配置文件System.Net命名空间下的设置的类。
程序集
System
定义:
public sealed class NetSectionGroup : ConfigurationSectionGroup
说明:
这个类提供了以程序方式访问存储在配置文件里的信息。
这个类和网络设置文档里的system.net元素(网络设置)相对应。
这部分的为下列名称空间提供配置设置:
System.Net
System.Net.Cache
System.Net.Mail
在程序里读取configuration/system.net/mailSettings/stmp配置
C#代码
//NetSectionGroup在上面已经介绍过了
//GetSectionGroup从指定的配置文件获取system.net的配置
//WebConfigurationManager.OpenWebConfiguration
//打开应用程序根目录下的web.config生成System.Configuration.Configuration对象实例
SmtpSection cfg = NetSectionGroup.GetSectionGroup(WebConfigurationManager.OpenWebConfiguration("~/web.config")).MailSettings.Smtp;
发送电子邮件
C#代码