c# 163网易发送邮件

是4.0的,说以添加包是

代码:
public class SendEmailInfo
{
/// <summary>
/// 发送邮件
/// </summary>
/// <param name="model"></param>
public string Send163Email(EmailSend model)
{
try
{
MailMessage mailMsg = new MailMessage();
//邮件的优先级,分为 Low, Normal, High,通常用 Normal即可
mailMsg.Priority = MailPriority.Normal;
//发件人
mailMsg.From = new MailAddress(model.addresser.caccount);
//收件人
foreach (var it in model.recipients)
{
mailMsg.To.Add(new MailAddress(it));
}
//如果你的邮件标题包含中文,这里一定要指定,否则对方收到的极有可能是乱码。
mailMsg.SubjectEncoding = Encoding.GetEncoding();
//标题
mailMsg.Subject = model.titlite;
//正文
mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(model.context, Encoding.UTF8, MediaTypeNames.Text.Html));
//附件
if (model.accessoryPath != null)
{
foreach (string path in model.accessoryPath)
{
//将附件添加到邮件
mailMsg.Attachments.Add(new Attachment(path));
//获取或设置此电子邮件的发送通知。
mailMsg.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess;
}
}
SmtpClient smtpClient = new SmtpClient();
//根据发件人的邮件地址判断发件服务器地址 默认端口一般是25
string[] addressor = model.addresser.caccount.Split(new Char[] { '@', '.' });
switch (addressor[])
{
case "":
smtpClient.Host = "smtp.163.com";
break;
case "":
smtpClient.Host = "smtp.126.com";
break;
case "qq":
smtpClient.Host = "smtp.qq.com";
break;
case "gmail":
smtpClient.Host = "smtp.gmail.com";
break;
case "hotmail":
smtpClient.Host = "smtp.live.com";//outlook邮箱//client.Port = 587;
break;
case "foxmail":
smtpClient.Host = "smtp.foxmail.com";
break;
case "sina":
smtpClient.Host = "smtp.sina.com.cn";
break;
default:
smtpClient.Host = "smtp.exmail.qq.com";//qq企业邮箱
break;
}
//使用安全加密连接。
smtpClient.EnableSsl = true;
//不和请求一块发送。
smtpClient.UseDefaultCredentials = false;
//验证发件人身份(发件人的邮箱,邮箱里的生成授权码);
smtpClient.Credentials = new NetworkCredential(model.addresser.caccount, model.addresser.password);
//如果发送失败,SMTP 服务器将发送 失败邮件告诉我
mailMsg.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
//加这段之前用公司邮箱发送报错:根据验证过程,远程证书无效
//加上后解决问题
ServicePointManager.ServerCertificateValidationCallback = delegate (Object obj, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors) { return true; };
smtpClient.Send(mailMsg);
smtpClient.Dispose();
return "";
}
catch (Exception ex)
{
Console.Write(ex.Message);
return ex.Message;
}
}
} public class EmailSend
{
/// <summary>
/// 发件人
/// </summary>
public Addresser addresser { get; set; }
/// <summary>
/// 收件人
/// </summary>
public List<string> recipients { get; set; }
/// <summary>
/// 标题
/// </summary>
public string titlite { get; set; }
/// <summary>
/// 内容
/// </summary>
public string context { get; set; }
/// <summary>
/// 附件地址
/// </summary>
public List<string> accessoryPath { get; set; }
} /// <summary>
/// 发件人
/// </summary>
public class Addresser
{
/// <summary>
/// 账号
/// </summary>
public string caccount { get; set; }
/// <summary>
/// 秘钥
/// </summary>
public string password { get; set; }
}
demo的地址:https://gitee.com/cainiaoA/sendEmail
c# 163网易发送邮件的更多相关文章
- ASP.NET用QQ,网易发送邮件以及添加附件
教程:ASP.NET用QQ,网易发送邮件以及添加附件 这是我用QQ邮箱出现的异常: 命令顺序不正确. 服务器响应为:Error: need EHLO and AUTH first !无法从传输连接中读 ...
- MUTT+MSMTP利用163服务器发送邮件
监控系统发送告警邮件,我们自己搭建邮件服务器,成本较高,所以可以使用163等第三方MTA帮助我们发送.MUTT+MSMTP是一个很好的选择,具体实现如下: tar -xvf msmtp-1.6.5.t ...
- app里使用163邮箱发送邮件,被163认为是垃圾邮件的坑爹经历!_ !
最近有个项目,要发邮件给用户设定的邮箱报警,然后就用了163邮箱,代码是网上借来的^^,如下: package com.smartdoorbell.util; import android.os.As ...
- Centos 5.x/6.x 配置163网易yum源
Centos系统默认都是系统自带的yum源,国内用户用yum源安装比较慢,为了提高效率,一般我们会配置国内的yum源.国内比较好的yum源有网易yum源.搜狐yum源等. 我感觉网易的yum源比较好用 ...
- phpmailer使用163邮件发送邮件例子
注意:如果你的服务器安装了卖咖啡并且开户病毒最大防护功能我们需要关闭一个邮件防护哦,否则你的邮件发不出去给被这款杀毒给拦截哦. 1. 使用gmail发送的脚本 代码如下 复制代码 include(&q ...
- java调用163邮箱发送邮件
1:注册一个163邮箱,http://mail.163.com 调用发送邮件代码,查询smtp.163.com,作为发送邮件的服务器ip,类似的邮箱服务器应该也可以. MailSenderInfo m ...
- dedecms织梦自定义表单发送到邮箱-用163邮箱发送邮件
https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=monline_3_dg&wd=dedecms 邮箱&oq=d ...
- python使用随机的163账号发送邮件
import linecache import smtplib import time import linecache import random #算出txt的行数,163账号_2.txt中,每一 ...
- CentOS7像外部163邮箱发送邮件
我们在运维过程中,为了随时了解服务器的工作状态,出现问题随时提醒,像个人邮箱发送邮件是必须的,但是刚刚安装好的系统是无法发送邮件的.需要们进行一些配置和程序的安装,我安装完系统后,自带mail12.5 ...
随机推荐
- 激活函数,Batch Normalization和Dropout
神经网络中还有一些激活函数,池化函数,正则化和归一化函数等.需要详细看看,啃一啃吧.. 1. 激活函数 1.1 激活函数作用 在生物的神经传导中,神经元接受多个神经的输入电位,当电位超过一定值时,该神 ...
- 通过adb操作安卓亮屏、设置背光亮度、解锁、打开app
亮屏 adb shell inputkeyevent 26 keyevent 26表示点击power Android adb 点亮和关闭屏幕的命令 # kernel休眠 echo mem > / ...
- netty 聊天室
https://blog.csdn.net/qq_37372007/article/details/82937584 使用netty实现一个多人聊天室--failed: Error during We ...
- css 百分比减去像素
1)第一种实现方式 @body_center_width: ~`$(document).width()-400+'px'`; #helloworld { width: @body_center_wid ...
- androidStudio: ERROR: Error occurred while communicating with CMake server.
遇到此错误的原因是cmake服务器协议版本不匹配: 解决方案: 1:直接更新android studio看能否解决: 2:如果解决不了,那么将androidstudio,ndk ,cmake,grad ...
- initGanttView
void TeslaManage::initGanttView() { if (vcGanttObject ==NULL) { vcGanttObject = new VCGantt(this); g ...
- 《海会圣贤》高清字幕版(由香港佛陀教育协会发布DVD恭敬转成)
常念阿彌陀佛 2015-09-22 视频(建议WIFI下收看)时长72分钟 https://v.qq.com/x/page/f0166amk57h.html 香港佛陀教育协会发布DVD DVD+高 ...
- jQuery BlockUI Plugin Demo 2
Overview The jQuery BlockUI Plugin lets you simulate synchronous behavior when using AJAX, without l ...
- CentOS7.2配置LNMP环境并安装配置网站WordPress
1,安装环境查看 2,安装MySQL5.7.22 下载MySQL wget https://downloads.mysql.com/archives/get/file/mysql-5.7.22-1.e ...
- php $_SERVER['HTTP_REFERER']详解
php $_SERVER['HTTP_REFERER']详解 ceshia.php <pre>echo '<a href="ceshib.php">cesh ...