C#发邮件之命名空间System.Net.Mail
1.添加一个类,取名为Email
public class Email
{
/// <summary>
/// 发送方发送方服务器地址
/// </summary>
public string strHost { get; set; }
/// <summary>
/// 发送方帐号
/// </summary>
public string strAccount { get; set; }
/// <summary>
/// 发送方密码
/// </summary>
public string strPwd { get; set; } /// <summary>
/// 发送方邮件地址
/// </summary>
public string strFrom { get; set; }
/// <summary>
/// 接收方邮件地址
/// </summary>
public string to { get; set; }
/// <summary>
/// 邮件标题
/// </summary>
public string title { get; set; } /// <summary>
/// 邮件正文内容
/// </summary>
public string content { get; set; }
///// <summary>
///// 附件
///// </summary>
//public string sfile { get; set; }
/// <summary>
/// 发送邮件
/// </summary>
/// <param name="strHost">发送方发送方服务器地址</param>
/// <param name="strAccount">发送方帐号</param>
/// <param name="strPwd">发送方密码</param>
/// <param name="strFrom">发送方邮件地址</param>
/// <param name="to">接收方邮件地址</param>
/// <param name="title">邮件标题</param>
/// <param name="content">邮件正文内容</param>
/// <param name="sfile">邮件附件</param>
/// <returns></returns>
public string sendMail(Email e)//string strHost, string strAccount, string strPwd, string strFrom, string to, string title, string content
{
SmtpClient smtpClient = new SmtpClient();
if (string.IsNullOrEmpty(e.strHost))
{
e.strHost = "smtp.sina.cn";//新浪测试
}
if (string.IsNullOrEmpty(e.strAccount))
{
e.strAccount = "xxx";
}
if (string.IsNullOrEmpty(e.strPwd))
{
e.strPwd = "xxx";
}
if (string.IsNullOrEmpty(e.strFrom))
{
e.strFrom = "xxx";
}
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;//指定电子邮件发送方式
smtpClient.Host = e.strHost; ;//指定SMTP服务器
smtpClient.UseDefaultCredentials = true;
smtpClient.Credentials = new System.Net.NetworkCredential(e.strAccount, e.strPwd);//用户名和密码 MailMessage mailMessage = new MailMessage(e.strFrom, e.to);
mailMessage.Subject = e.title;//主题
mailMessage.Body = e.content;//内容
mailMessage.BodyEncoding = System.Text.Encoding.UTF8;//正文编码
mailMessage.IsBodyHtml = true;//设置为HTML格式
mailMessage.Priority = MailPriority.High;//优先级
////// 添加附件
//if (e.sfile != "")
//{
// mailMessage.Attachments.Add(new Attachment(e.sfile));
//}
try
{
smtpClient.Send(mailMessage);
mailMessage.Dispose();//释放资源
return "成功";
}
catch (Exception ex)
{
return ex.ToString();
}
}
}
2.方法调用
Email email = new Email();//实例化我们上面的Email类
email.strHost = "smtp.163.com";发送方服务器地址
email.strAccount = "用户名";发送方用户名 ps:邮箱地址为88888888@163.com 用户名则为:88888888
email.to = "收件人邮箱地址";//你要给谁发邮件
email.title = “title”;//这个不做解释
email.strPwd = "";//邮箱授权码,这个在下面解释
email.strFrom = "发送方的邮件地址";
email.content = @"邮件内容(字写多点,字数少发不成功,不知道为什么,有朋友知道的给我留言,谢谢)";
email.sendMail(email);
3.授权码获取
QQ授权码:打开QQ邮箱,点击设置
选择账户
向下拉找到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务 根据需要开启
163邮箱:打开163官网 <a href=" https://mail.163.com/">163官网</a>
我这里是已经开启的,没开启的点击开启,后面会进行手机短信验证,验证成功后,设置你自己 的邮箱授权码
到这里就结束了,小弟才疏学浅,各路好汉应取其精华,去其糟粕,希望能够帮助到需要的人!!!
C#发邮件之命名空间System.Net.Mail的更多相关文章
- 杂项收集,包括-发邮件、二维码生成、文件下载、压缩、导出excel
本篇就最近工作解决的问题做个代码收集.包括以下几个方面:发邮件.二维码生成.文件下载.压缩.导出excel.有一种可用的解决方法就好,不求全面,不求原理. 1.发邮件: 命名空间:System.Net ...
- C# 发送电子邮件(含附件)用到的类 system.web.mail
主要是用到了System.Web.Mail命名空间,用到了此空间的三个类,分别是: ●MailMessage类,用于构造电子邮件●MailAttachment类,用于构造电子邮件附件●SmtpMail ...
- Java - JavaMail - 利用 JavaMail 发邮件的 小demo
1. 概述 面试的时候, 被问到一些乱七八糟的运维知识 虽然我不是干运维的, 但是最后却告诉我专业知识深度不够, 感觉很难受 又回到了一个烦人的问题 工作没有深度的情况下, 你该如何的提升自己, 并且 ...
- 阿里云服务器25端口禁用之如何使用Java发邮件(解决25端口禁用问题)
通常我们在本地使用Java发送邮件,通常是没有问题的,但是部署到服务器的话,就可能遇到问题.当然了,这与运营商也有关系.比如我之前在咖啡主机上购买虚拟机,然后将个人网站部署上去,通常是没有问题的,没有 ...
- linux(centos8):阿里云ecs配置smtps发邮件(解决不能通过25端口发邮件问题)
一,2016年9月后购买的阿里云ecs不再支持通过25端口发送邮件 官方的建议是使用465端口 465端口(SMTPS): 465端口是为SMTPS(SMTP-over-SSL)协议服务开放的 它是S ...
- centos 邮件服务 腾讯企业邮箱(免费) 使用iRedmail 需要有公网的centos主机 发邮件协议:smtp 端口25 收邮件协议:pop3 端口110 iredmail安装配置 使用邮箱系统 第三十一节课
centos 邮件服务 腾讯企业邮箱(免费) 使用iRedmail 需要有公网的centos主机 发邮件协议:smtp 端口25 收邮件协议:pop3 端口110 iredmail安装配置 ...
- 监控系统负载与CPU、内存、硬盘、登录用户数,超出警戒值则发邮件告警。
zzx@zzx:~$ cat warning.sh #!/bin/bash #监控系统负载与CPU.内存.硬盘.登录用户数,超出警戒值则发邮件告警. 前提安装mail服务nh=`uname -r ...
- C# System.Net.Mail.MailMessage 发邮件
C# System.Net.Mail.MailMessage 发邮件 上篇文化在哪个可以看到使用 System.Web.Mail.MailMessage 发邮件时会提示 ,提供用于构造电子邮件的属性和 ...
- C# System.Web.Mail.MailMessage 发邮件
C# System.Web.Mail.MailMessage 发邮件 新建控制台Console项目,然后添加 System.Web引用 代码如下: using System; using System ...
随机推荐
- Sed的查,删,增,改
sed的查,删,增,改 1.sed的查找 2.sed的删除 3.sed的上下左右增加文件内容 4.sed的改
- 并查集(Disjoint Set Union,DSU)
定义: 并查集是一种用来管理元素分组情况的数据结构. 作用: 查询元素a和元素b是否属于同一组 合并元素a和元素b所在的组 优化方法: 1.路径压缩 2.添加高度属性 拓展延伸: 分组并查集 带权并查 ...
- 在url里请求id
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- sping+quartz定时任务的最简单实践
1,启动spring容器 Tomcat启动的时候,加载web.xml的listener和context-param,spring的listener监听到对应的contextConfigLocation ...
- Vue学习笔记【8】——在Vue中使用样式
使用class样式 数组 <h1 :class="['red', 'thin']">这是一个邪恶的H1</h1> 2.数组中使用三元表达式 <h1 : ...
- 管理员技术(一):装机预备技能、安装一台RHEL7虚拟机、使用RHEL7图形桌面、Linux命令行基本操作
一.装机预备技能 问题: 本例要求安装一台可用的KVM服务器: 1> RHEL与CentOS系统有什么关联? 2> 第2块SCSI硬盘的第3个逻辑分区,Linux如何表 ...
- API应用实例
API声明透明 {API声明} type TSetLayeredWindowAttributes = function(wnd: HWND; crKey: DWORD; bAlpha: BYTE; d ...
- goroutine 需要注意的一个小细节
虽然goroutine 是并发执行的,但是它们并不是并行运行的.如果不告诉Go 额外的东西,同一时刻只会有一个goroutine 执行.利用runtime.GOMAXPROCS(n) 可以设置goro ...
- thinkphp5.1调用七牛云SDK上传文件
thinkphp5.0 class Upload { public static function image(){ if(empty($_FILES['file']['tmp_name'])){ e ...
- jQuery 对文档的操作
通过jquery方式实现页面各种节点的追加.修改.删除.复制等操作 节点追加 1 父子关系追加 /*************************************************** ...