C#实现简单的邮件发送功能

唉,最近要做一个项目,里面需要实现邮件发送功能。在网络上也找一些看,自己也随便写下。也当做是给自己复习下吧,如有不对之处还请大家指出。谢谢!

首先我是创建一个实体对象Model (EmailParameterSet) :

 1  public  class EmailParameterSet
 2     {
 3         /// <summary>
 4         /// 收件人的邮件地址
 5         /// </summary>
 6         public string ConsigneeAddress { get; set; }
 7
 8         /// <summary>
 9         /// 收件人的名称
10         /// </summary>
11         public string ConsigneeName { get; set; }
12
13         /// <summary>
14         /// 收件人标题
15         /// </summary>
16         public string ConsigneeHand { get; set; }
17
18         /// <summary>
19         /// 收件人的主题
20         /// </summary>
21         public string ConsigneeTheme { get; set; }
22
23         /// <summary>
24         /// 发件邮件服务器的Smtp设置
25         /// </summary>
26         public string SendSetSmtp { get; set; }
27
28         /// <summary>
29         /// 发件人的邮件
30         /// </summary>
31         public string SendEmail { get; set; }
32
33         /// <summary>
34         /// 发件人的邮件密码
35         /// </summary>
36         public string SendPwd { get; set; }
37         /// <summary>
38         /// 发件内容
39         /// </summary>
40         public string SendContent { get; set; }
41     }

方法也简单  如果发送成功就返回一个bool值

 1  public bool MailSend(EmailParameterSet EPSModel )
 2         {
 3             try
 4             {
 5                 //确定smtp服务器端的地址,实列化一个客户端smtp
 6                 System.Net.Mail.SmtpClient sendSmtpClient = new System.Net.Mail.SmtpClient(EPSModel.SendSetSmtp);//发件人的邮件服务器地址
 7                 //构造一个发件的人的地址
 8                 System.Net.Mail.MailAddress sendMailAddress = new MailAddress(EPSModel.SendEmail, EPSModel.ConsigneeHand, Encoding.UTF8);//发件人的邮件地址和收件人的标题、编码
 9
10                 //构造一个收件的人的地址
11                 System.Net.Mail.MailAddress consigneeMailAddress = new MailAddress(EPSModel.ConsigneeAddress, EPSModel.ConsigneeName, Encoding.UTF8);//收件人的邮件地址和收件人的名称 和编码
12
13                 //构造一个Email对象
14                 System.Net.Mail.MailMessage mailMessage = new MailMessage(sendMailAddress, consigneeMailAddress);//发件地址和收件地址
15                 mailMessage.Subject = EPSModel.ConsigneeTheme;//邮件的主题
16                 mailMessage.BodyEncoding = Encoding.UTF8;//编码
17                 mailMessage.SubjectEncoding = Encoding.UTF8;//编码
18                 mailMessage.Body = EPSModel.SendContent;//发件内容
19                 mailMessage.IsBodyHtml = false;//获取或者设置指定邮件正文是否为html
20
21                 //设置邮件信息 (指定如何处理待发的电子邮件)
22                 sendSmtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定如何发邮件 是以网络来发
23                 sendSmtpClient.EnableSsl = false;//服务器支持安全接连,安全则为true
24
25                 sendSmtpClient.UseDefaultCredentials = false;//是否随着请求一起发
26
27                 //用户登录信息
28                 NetworkCredential myCredential = new NetworkCredential(EPSModel.SendEmail, EPSModel.SendPwd);
29                 sendSmtpClient.Credentials = myCredential;//登录
30                 sendSmtpClient.Send(mailMessage);//发邮件
31                 return true;//发送成功
32             }
33             catch (Exception)
34             {
35                 return false;//发送失败
36             }
37         }

然后就调用就可以。

 1   private void button3_Click(object sender, EventArgs e)
 2         {
 3             EmailParameterSet model = new EmailParameterSet();
 4             model.SendEmail = "[email protected]";
 5             model.SendPwd = "xxx";//密码
 6             model.SendSetSmtp = "smtp.163.com";//发送的SMTP服务地址 ,每个邮箱的是不一样的。。根据发件人的邮箱来定
 7             model.ConsigneeAddress = "[email protected]";
 8             model.ConsigneeTheme = "主题";
 9             model.ConsigneeHand = "标题";
10             model.ConsigneeName = "李可能";
11             model.SendContent = "htpp://www.baidu.com";
12             if (MailSend(model)== true)
13             {
14                 MessageBox.Show("邮件发送成功!");
15             }
16             else
17             {
18                 MessageBox.Show("邮件发送失败!");
19             }
20         }

C#实现简单的邮件发送功能

时间: 2024-10-14 18:58:31

C#实现简单的邮件发送功能的相关文章

C#,简单的邮件发送功能,邮件辅助类

这个帮助类只能发送简单的基本邮件,只能发送给多个用户,单一内容.不具有抄送功能,附件添加功能.功能代码如下, private void button3_Click(object sender, EventArgs e) { int result = SendEmail("[email protected]", "123456", new string[] { "[email protected]" }, "测试标题", &qu

.Net实现简单的邮件发送

使用winform写了一个小程序,实现简单的邮件发送功能,部分代码如下: //异步发送邮件: 1 //发送按钮 2 private void btn_Send_Click(object sender, EventArgs e) 3 { 4 //创建MailMessage对象 5 MailAddress from = new MailAddress("[email protected]"); 6 MailAddress to = new MailAddress("[email 

redmine邮件发送功能配置详解

redmine的邮件发送功能还是很有用的. 像项目有更新啦,任务分配啦,都能邮件发送的相关责任人. 我自己在linux服务器上安装并启动了redmine后,邮件一直发送了不了. 查了网上的资料,都是讲修改下配置文件就可以了,他们没错,只是没有讲全. 下面是我整理的一个redmine邮件发送功能设置的一个完整流程. 1. sendmail安装与检查 linux机器上安装的redmine要能发送邮件,先得是本机的sendmail功能是正常的. 查看sendmail进程是否已正常启动: $ ps au

邮件发送功能开发

作为一名.Net开发,"邮件发送"功能的开发和使用是必须要掌握的,因为这个功能作为"消息推送"的一种手段经常出现在各种.Net系统中,所以本文将对.Net平台下的"邮件发送",做一个细致的分析! 一.who需要邮件功能 1.服务提供方:需提供邮件收发客户端或Web服务.如:QQ邮箱.GMail邮箱.126.163等知名邮件服务提供商.注:如果你使用的第三方不知名邮件服务商提供的邮件收发服务,通过其发出的邮件,可能会被其他知名邮件服务提供商的STM

.NET开发邮件发送功能的全面教程(含邮件组件源码)

ref: http://www.cnblogs.com/heyuquan/p/net-batch-mail-send-async.html 今天,给大家分享的是如何在.NET平台中开发"邮件发送"功能.在网上搜的到的各种资料一般都介绍的比较简单,那今天我想比较细的整理介绍下: 1)         邮件基础理论知识 2)         邮件发送相关.NET类库 3)         介绍我开发的一个发送邮件的小组件(MailHelper) 4)         MailHelper组

用ASP.NET Core 1.0中实现邮件发送功能-阿里云邮件推送篇

在上篇中用MailKit实现了Asp.net core 邮件发送功能,但一直未解决阿里云邮件推送问题,提交工单一开始的回复不尽如人意,比如您的网络问题,您的用户名密码不正确等,但继续沟通下阿里云客户还是很耐心的. 最终结论,是由于MailKit发送了两次EHLO命令,查看了MailKit源码后竟然发现,里面写了硬编码: if (host != "smtp.strato.de" && host != "smtp.sina.com") Ehlo (can

ThinkPHP中邮件发送功能

初次使用thinkphp框架,开发一个邮件发送功能,由于对框架不熟悉折腾了几个小时终于成功了,以下是代码记录. 此函数只能在ThinkPHP中使用且需要phpmailer扩展的支持:phpmail的下载地址:https://code.google.com/a/apache-extras.org/p/phpmailer 将phpmailer解压后放置扩展放置到第三方类库扩展目录下: ThinkPHP/Extend/Vendor/文件夹下即可,并使用vendor方法来导入.更详细介绍参考:http:

第四周作业 简单地邮件发送实现

先说发送邮箱用到的三大类: 创建和解析邮件内容的API :Message类是创建和解析邮件的核心API,它的实例对象代表一封电子邮件. 发送邮件的API:Transport类是发送邮件的核心API类,它的实例对象代表实现了某个邮件发送协议的邮件发送对象,例如SMTP协议. 接收邮件的API:Store类是接收邮件的核心API类,它的实例对象代表实现了某个邮件接收协议的邮件接收对象,例如POP3协议. 还有一个提供会话信息的类Session. 简单地邮件发送的过程: 相关的协议说明:见 smtp:

xampp 和thinkphp 建一个本地站并实现邮件发送功能

一.xampp的安装使用 1.首先看下什么是xampp,想要建站的小伙伴肯定都知道,XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建 XAMPP 软件站集成软件包. 它可以在Windows.Linux.Solaris.Mac OS X 等多种操作系统下安装使用 2.需要什么版本到官网上下载:xampp下载 3.安装很简单,傻瓜式安装,感觉mysql选项可以去掉,自己安装一个,具体安装看这个:mysql安装,另外路径建议只改动盘符,保留后缀路径 4.安装好的目录如下 5.