ASP.NET 3.5 中实现发送email电子邮件

简介: 来源:红黑联盟 方法1:cs代码 using System.Net.Mail; using System.Net; 1 string mailServerName = "smtp.

来源:红黑联盟

方法1:cs代码

using System.Net.Mail;
using System.Net;
 1         string mailServerName = "smtp.qq.com";  //发送邮件的SMTP服务器
 2         string mailFrom = "xxxxxx@qq.com";   //发件人邮箱(用126的邮件服务器,就必须用126邮箱的用户名)
 3         string mailTo = "xxxxxx@qq.com";   //收件人邮箱
 4         string subject = "用代码方式发送邮件";//邮件主题
 5         string body = "这里是邮件正文了";  //邮件正文
 6  
 7         using (MailMessage message = new MailMessage(mailFrom, mailTo, subject, body))
 8         {
 9             //SmtpClient是发送邮件的主体,这个构造函数是告知SmtpClient发送邮件时使用哪个SMTP服务器
10             SmtpClient mailClient = new SmtpClient(mailServerName);
11             //将认证实例赋予mailClient,也就是访问SMTP服务器的用户名和密码
12             mailClient.Credentials = new NetworkCredential("xxx", "xxxxxx");
13             //最终的发送方法
14             mailClient.Send(message);
15         }
16         Response.Write("发送成功");

方法2:cs代码+web.config

在web.confg中添加如下代码:(本人试过了,把下面这段代码放在<configuration>  </configuration>节内部即可。)

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

下面我自己的实验截图

CS代码部分:

using System.Net.Mail;
 1 using (MailMessage message = new MailMessage())
 2         {
 3             message.To.Add(new MailAddress("xxxxxxx@qq.com")); //收件人邮箱
 4             message.Subject = "通过配置文件设置发送邮件";//邮件主题
 5             message.Body = "这里是邮件正文了";  //邮件正文
 6  
 7             SmtpClient mailClient = new SmtpClient();
 8             mailClient.Send(message);
 9             Response.Write("发送成功");
10         }
View Code

方法3:cs代码(函数)

using System.Net.Mail;
using System.Text;
 1     public bool SendEmail(string mailTo, string mailSubject, string mailContent)
 2     {
 3         // 设置发送方的邮件信息,例如使用网易的smtp 
 4         string smtpServer = "smtp.qq.com"; //SMTP服务器 
 5         string mailFrom = "XXXXX@qq.com"; //登陆用户名
 6         string userPassword = "XXX";//登陆密码 
 7         // 邮件服务设置 SmtpClient
 8         SmtpClient smtpClient = new SmtpClient();
 9         smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
10         //指定电子邮件发送方式
11         smtpClient.Host = smtpServer;
12         //指定SMTP服务器 
13         smtpClient.Credentials = new System.Net.NetworkCredential(mailFrom, userPassword);//用户名和密码
14         // 发送邮件设置 
15         MailMessage mailMessage = new MailMessage(mailFrom, mailTo); // 发送人和收件人 
16         mailMessage.Subject = mailSubject;//主题 
17         mailMessage.Body = mailContent;//内容
18         mailMessage.BodyEncoding = Encoding.UTF8;//正文编码 
19         mailMessage.IsBodyHtml = true;//设置为HTML格式
20         mailMessage.Priority = MailPriority.Low;//优先级 
21         try
22         {
23             smtpClient.Send(mailMessage);// 发送邮件 
24             return true; 
25         }
26         catch (SmtpException ex)
27         {
28             return false;
29         }
30     }
31  
32  
33  
34         bool result = this.SendEmail("xxxxxxxx@qq.com", "邮件EMAIL主题", "邮件Email内容");
35         if (result)
36         {
37             Response.Write("发送成功");
38         }
39         else
40         {
41             Response.Write("发送失败");
42         }

 

实验的感觉:

通过SMTP发送邮件,方法简单。但是现如今好多网站的SMTP服务器限制的比较严,可能会导致发送失败。

 

相关文章
|
数据安全/隐私保护
通过.NET实现后台自动发送Email功能的代码示例
原文: 通过.NET实现后台自动发送Email功能的代码示例   通过.NET实现后台自动发送邮件功能的代码,可以将一些基础信息放到web.config文件中进行保存: Web.
946 0
|
4月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
47 0
|
18天前
|
开发框架 前端开发 JavaScript
JavaScript云LIS系统源码ASP.NET CORE 3.1 MVC + SQLserver + Redis医院实验室信息系统源码 医院云LIS系统源码
实验室信息系统(Laboratory Information System,缩写LIS)是一类用来处理实验室过程信息的软件,云LIS系统围绕临床,云LIS系统将与云HIS系统建立起高度的业务整合,以体现“以病人为中心”的设计理念,优化就诊流程,方便患者就医。
22 0
|
2月前
|
开发框架 前端开发 .NET
进入ASP .net mvc的世界
进入ASP .net mvc的世界
32 0
|
2月前
|
开发框架 前端开发 .NET
C# .NET面试系列六:ASP.NET MVC
<h2>ASP.NET MVC #### 1. MVC 中的 TempData\ViewBag\ViewData 区别? 在ASP.NET MVC中,TempData、ViewBag 和 ViewData 都是用于在控制器和视图之间传递数据的机制,但它们有一些区别。 <b>TempData:</b> 1、生命周期 ```c# TempData 的生命周期是短暂的,数据只在当前请求和下一次请求之间有效。一旦数据被读取,它就会被标记为已读,下一次请求时就会被清除。 ``` 2、用途 ```c# 主要用于在两个动作之间传递数据,例如在一个动作中设置 TempData,然后在重定向到另
114 5
|
9月前
|
存储 开发框架 前端开发
[回馈]ASP.NET Core MVC开发实战之商城系统(五)
经过一段时间的准备,新的一期【ASP.NET Core MVC开发实战之商城系统】已经开始,在之前的文章中,讲解了商城系统的整体功能设计,页面布局设计,环境搭建,系统配置,及首页【商品类型,banner条,友情链接,降价促销,新品爆款】,商品列表页面,商品详情等功能的开发,今天继续讲解购物车功能开发,仅供学习分享使用,如有不足之处,还请指正。
124 0
|
10月前
|
开发框架 前端开发 .NET
[回馈]ASP.NET Core MVC开发实战之商城系统(三)
[回馈]ASP.NET Core MVC开发实战之商城系统(三)
67 0