C#邮件发送
2015-12-07 20:26
375 查看
目录
目录邮件发送
说明
SMTP 协议
邮件服务器
具体代码
邮件发送
说明
本文主要说明如何用 C# 语言来写一个小功能————SMTP 邮件发送。并且本文中用的是网易126邮件服务器为例。SMTP 协议
首先,发送邮件的前提是发送方需支持简单邮件传输协议( Simple Mail Transfer Protocol ),默认端口为25。进入126网易邮箱,在上方的导航栏中可以看到“设置”一栏,点击后选择 POP3/SMTP/IMAP 进入设置页面。点击开启 SMTP 服务并保存即可(目前新申请的邮箱需要绑定手机号才可开启此功能)。
邮件服务器
常用的邮件服务器如下,只列出了一部分,具体可以去网上查询。常用邮件服务器名 | POP3服务器地址 | SMTP服务器地址 |
---|---|---|
google.com | pop.gmail.com | smtp.gmail.com |
sina.com | pop3.sina.com.cn | smtp.sina.com.cn |
163.com | pop.163.com | smtp.163.com |
126.com | pop.126.com | smtp.126.com |
china.com | pop.china.com | smtp.china.com |
sohu.com | pop3.sohu.com | smtp.sohu.com |
yahoo.com | pop.mail.yahoo.com | smtp.mail.yahoo.com |
google.com | pop.gmail.com | smtp.gmail.com |
具体代码
首先引用两个命名空间using System.Net;
using System.Net.Mail;
/// <summary> /// 邮件发送 /// </summary> /// <param name="toMail">收件人邮箱</param> /// <param name="title">邮件标题</param> /// <param name="body">邮件内容</param> /// <param name="host">邮件服务器,例:"smtp.126.com"</param> /// <param name="port">邮件服务器端口</param> public void Send(string toMail, string title, string body, string host, int port) { MailAddress from = new MailAddress(发件人邮箱, 发件人名字); // 设置收件人信箱,及显示名字 MailAddress to = new MailAddress(toMail, "admin"); // 创建一个MailMessage对象 MailMessage oMail = new MailMessage(from, to); oMail.Subject = title; // 邮件标题 oMail.Body = body; // 邮件内容 oMail.IsBodyHtml = true; // 指定邮件格式,支持HTML格式 oMail.BodyEncoding = System.Text.Encoding.GetEncoding("GB2312"); // 邮件采用的编码 oMail.Priority = MailPriority.High; // 设置邮件的优先级为高 // 发送邮件服务器 SmtpClient client = new SmtpClient(); client.Host = host; // 指定邮件服务器 client.Port = port; // 端口 client.Credentials = new NetworkCredential(发件人邮箱, 邮箱SMTP授权密码); // 指定服务器邮件,及邮箱SMTP授权密码 // 发送 try { client.Send(oMail); // 发送邮件 } catch (Exception e) { ... } }
相关文章推荐
- C#操作XML的方法
- c#通用递归生成无限层级树
- C#特性详解
- 造轮子:C#中将图片转化成base64字符串
- c#获取当前月的第一天和最后一天
- C# Mvc中文件下载
- C#遍历类的属性 PropertyInfo.Attributes
- c# 动态操作 zip\rar 文件,压缩解压组件使用
- c#如何将winform窗体封装成可以引用的dll文件
- C#使用事务
- C#邮箱发送验证码
- C#实现简单聊天程序的方法
- C#邮箱发送
- C#类型转换总结(三)各类型转化实例
- C# 八进制数值字符串转换成ASCII 字符串相互转换
- C# 操作自定义config文件
- c#生成时间戳
- C# 函数中的out型参数
- C#模拟windows账户登录,并复制文件代码
- c#之时间戳与DateTime的相互转换