C#发送邮件的实现实例解析

开发 后端
C#发送邮件的实现实例在这里主要向你介绍使用System.Net.Mail来实现的情况,那么使用System.Net.Mail来实现C#发送邮件的功能需要注意什么呢?本文就向你介绍具体的内容。

C#发送邮件使用System.Net.Mail来实现,那么在这种实现中要注意这样几个问题是什么?C#发送邮件使用System.Net.Mail来实现的具体的实例是什么呢?现在开始我们的讲述。

1、System.Net.Mail是.NET 2.0以后的版本中被推荐使用的方法,它解决了一些编码问题和一些安全验证的问题,并且对MailMessage类重写,提供了更多的函数,使得建立MailMessage更加便利。

2、System.Net.Mail.MailMessage中,加入SubjectEncoding属性,而且对于To, Cc, Bcc都加入了一些域下的方法,使得可以更便利的实现邮件群发。而且使用了更加面向对象的MailAddress类的对象来表明邮件地址。

3、System.Net.Mail中加入SmtpClient类,该类包含了诸如本应用中的一些方法和属性,可以对链接进行安全链接的标记等等

4、值得注意的是,一般来讲SMTP(Simple Message Transfer Protocol)使用的端口是25,这也是多数邮件服务期提供的端口,但是gmail却不一样,gmail的***端口是587,而不是先前的465。

5、Gmail的服务器是要求安全链接的,所以一定要指定Sender.EnableSsl = true。

6、此外SmtpClient对象中有一个非常重要的方法,要介绍一下,就是SendAsync(), 这个方法已经被重载过了,public void SendAsync(MailMessage message, object userToken)要求使用MailMessage作为发送对象,并且勇userToken指定异步操作时调用的方法。public void SendAsync(string from, string recipients, string subject, string body, object userToken) 可以不用建立MailMessage对象直接发送邮件,userToken与上一个函数相同,public void SendAsyncCancel()用来取消异步操作以发送邮件。

C#发送邮件使用System.Net.Mail来实现的实例

  1. using System;   
  2. using System.Collections;   
  3. using System.Text;   
  4. using System.Net;   
  5. using System.Net.Mail;   
  6.  
  7. namespace NetMailSend   
  8. {   
  9. class Programe   
  10. {   
  11. public static void Main(string[] args)   
  12. {   
  13. //mail message   
  14. MailMessage myMail = new MailMessage();   
  15. myMail.From = new MailAddress("test@gmail.com");   
  16. myMail.To.Add(new MailAddress("test@gmail.com"));   
  17. myMail.Subject = "Test";   
  18. myMail.SubjectEncoding = Encoding.UTF8;   
  19. myMail.Body = "You are successed.";   
  20. myMail.BodyEncoding = Encoding.UTF8;   
  21. myMail.IsBodyHtml = false;   
  22. myMail.Priority = MailPriority.High;   
  23. myMail.CC.Add(new MailAddress("test@gmail.com"));   
  24. myMail.Bcc.Add(new MailAddress("test@gmail.com"));  
  25. //smtp client   
  26. SmtpClient sender = new SmtpClient();   
  27. sender.Host = "smtp.gmail.com";   
  28. sender.Port = 587;   
  29. sender.Credentials =   
  30. new NetworkCredential("test@gmail.com""test");   
  31. sender.DeliveryMethod = SmtpDeliveryMethod.Network;   
  32. sender.EnableSsl = true;   
  33. try   
  34. {   
  35. sender.Send(myMail);   
  36. Console.WriteLine("Success");   
  37. }   
  38. catch (Exception e)   
  39. {   
  40. Console.WriteLine("Failed.Exception:{0}", e.Message);   
  41. }   
  42. Console.Write("Press any key to quit...");   
  43. Console.ReadKey();   
  44. }   
  45. }   
  46. }   
  47.  

C#发送邮件使用System.Net.Mail来实现的具体内容就向你介绍到这里,希望对你了解和学习C#发送邮件有所帮助。

【编辑推荐】

  1. .Net回车符的问题解决方案
  2. C#回车键事件实例解析
  3. C#回车切换焦点实例浅谈
  4. 关于C#回车切换焦点实现的探讨
  5. C#发送消息方法简析
责任编辑:仲衡 来源: 博客园
相关推荐

2009-09-01 16:59:25

C#画直线

2009-09-01 13:59:01

C#操作Excel

2009-09-03 17:06:17

C#回车切换焦点

2009-09-02 16:14:21

C#动态创建数组

2009-08-21 09:44:44

C#发送Email邮件

2009-08-27 18:09:49

C#接口的实现

2009-09-03 12:52:50

C#打开记事本

2009-08-17 14:41:47

C#进度条实现

2009-09-09 12:55:59

C# TextBox事

2009-08-31 17:16:12

C#实现接口

2009-08-14 09:50:46

C#复制构造函数

2009-09-03 10:52:41

C#递归树

2009-08-17 17:15:48

C# 进度条效果

2009-09-03 17:31:34

C#发送邮件

2009-09-07 03:58:42

WinForm传值

2009-08-31 12:31:45

C#创建文件夹

2009-08-31 17:30:10

C#接口的作用

2009-08-27 17:40:21

C#接口的作用

2009-09-09 14:40:15

C# XML解析

2009-09-07 06:31:32

C#窗体移动
点赞
收藏

51CTO技术栈公众号