C#发送邮件!

VS2005中用一个 System.Net.Mail  类

[c-sharp]  view plain copy
  1. MailAddress from = new MailAddress("发件人邮箱""发件人名字"); //邮件的发件人  
  2.   
  3. MailMessage mail = new MailMessage();  
  4.   
  5. //设置邮件的标题  
  6. mail.Subject = txtSubject.Text;  
  7.   
  8. //设置邮件的发件人  
  9. //Pass:如果不想显示自己的邮箱地址,这里可以填符合mail格式的任意名称,真正发mail的用户不在这里设定,这个仅仅只做显示用  
  10. mail.From = from;  
  11.   
  12. //设置邮件的收件人  
  13. string address = "";  
  14. string displayName = "";  
  15. /**//*  这里这样写是因为可能发给多个联系人,每个地址用 ; 号隔开 
  16.   一般从地址簿中直接选择联系人的时候格式都会是 :用户名1 < mail1 >; 用户名2 < mail 2>;  
  17.   因此就有了下面一段逻辑不太好的代码 
  18.   如果永远都只需要发给一个收件人那么就简单了 mail.To.Add("收件人mail"); 
  19. */  
  20. string[] mailNames = (txtMailTo.Text + ";").Split(';');  
  21. foreach (string name in mailNames)  
  22. {  
  23.     if (name != string.Empty)  
  24.     {  
  25.         if (name.IndexOf('<') > 0)  
  26.        {  
  27.             displayName = name.Substring(0, name.IndexOf('<'));  
  28.             address = name.Substring(name.IndexOf('<') + 1).Replace('>'' ');  
  29.         }  
  30.         else  
  31.         {  
  32.             displayName = string.Empty;  
  33.             address = name.Substring(name.IndexOf('<') + 1).Replace('>'' ');  
  34.         }  
  35.         mail.To.Add(new MailAddress(address, displayName));  
  36.     }  
  37. }  
  38.   
  39. //设置邮件的抄送收件人  
  40. //这个就简单多了,如果不想快点下岗重要文件还是CC一份给领导比较好  
  41. mail.CC.Add(new MailAddress("抄送邮箱""抄送人名字");  
  42.   
  43. //设置邮件的内容  
  44. mail.Body = txtBody.Text;  
  45. //设置邮件的格式  
  46. mail.BodyEncoding = System.Text.Encoding.UTF8;  
  47. mail.IsBodyHtml = true;  
  48. //设置邮件的发送级别  
  49. mail.Priority = MailPriority.Normal;  
  50.   
  51. //设置邮件的附件,将在客户端选择的附件先上传到服务器保存一个,然后加入到mail中  
  52. string fileName = txtUpFile.PostedFile.FileName.Trim();  
  53. fileName = "D:/UpFile/" + fileName.Substring(fileName.LastIndexOf("/") + 1);  
  54. txtUpFile.PostedFile.SaveAs(fileName); // 将文件保存至服务器  
  55. mail.Attachments.Add(new Attachment(fileName));  
  56.   
  57. mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess;  
  58.   
  59. SmtpClient client = new SmtpClient();  
  60. //设置用于 SMTP 事务的主机的名称,填IP地址也可以了  
  61. client.Host = "smtp.126.com";  
  62. //设置用于 SMTP 事务的端口,默认的是 25  
  63. //client.Port = 25;  
  64. client.UseDefaultCredentials = false;  
  65. //这里才是真正的邮箱登陆名和密码,比如我的邮箱地址是 xinle87@126.com, 我的用户名为 hbgx ,我的密码是 xgbh  
  66. client.Credentials = new System.Net.NetworkCredential("hbgx""xgbh");  
  67. client.DeliveryMethod = SmtpDeliveryMethod.Network;  
  68. //都定义完了,正式发送了,很是简单吧!  
  69. client.Send(mail);  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值