C#-MailHelper
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Net.Mail; namespace Common
{
public class MailHelper
{
/// <summary>
/// 发送者
/// </summary>
public string mailFrom { get; set; } /// <summary>
/// 收件人
/// </summary>
public string[] mailToArray { get; set; } /// <summary>
/// 抄送
/// </summary>
public string[] mailCcArray { get; set; } /// <summary>
/// 标题
/// </summary>
public string mailSubject { get; set; } /// <summary>
/// 正文
/// </summary>
public string mailBody { get; set; } /// <summary>
/// 发件人密码
/// </summary>
public string mailPwd { get; set; } /// <summary>
/// SMTP邮件服务器
/// </summary>
public string host { get; set; } /// <summary>
/// 正文是否是html格式
/// </summary>
public bool isbodyHtml { get; set; } /// <summary>
/// 附件
/// </summary>
public string[] attachmentsPath { get; set; } public bool Send()
{
//使用指定的邮件地址初始化MailAddress实例
MailAddress maddr = new MailAddress(mailFrom);
//初始化MailMessage实例
MailMessage myMail = new MailMessage(); //向收件人地址集合添加邮件地址
if (mailToArray != null)
{
for (int i = ; i < mailToArray.Length; i++)
{
myMail.To.Add(mailToArray[i].ToString());
}
} //向抄送收件人地址集合添加邮件地址
if (mailCcArray != null)
{
for (int i = ; i < mailCcArray.Length; i++)
{
myMail.CC.Add(mailCcArray[i].ToString());
}
}
//发件人地址
myMail.From = maddr; //电子邮件的标题
myMail.Subject = mailSubject; //电子邮件的主题内容使用的编码
myMail.SubjectEncoding = Encoding.UTF8; //电子邮件正文
myMail.Body = mailBody; //电子邮件正文的编码
myMail.BodyEncoding = Encoding.Default; myMail.Priority = MailPriority.High; myMail.IsBodyHtml = isbodyHtml; //在有附件的情况下添加附件
try
{
if (attachmentsPath != null && attachmentsPath.Length > )
{
Attachment attachFile = null;
foreach (string path in attachmentsPath)
{
attachFile = new Attachment(path);
myMail.Attachments.Add(attachFile);
}
}
}
catch (Exception err)
{
throw new Exception("在添加附件时有错误:" + err);
} SmtpClient smtp = new SmtpClient();
//指定发件人的邮件地址和密码以验证发件人身份
smtp.Credentials = new System.Net.NetworkCredential(mailFrom, mailPwd); //设置SMTP邮件服务器
smtp.Host = host; try
{
//将邮件发送到SMTP邮件服务器
smtp.Send(myMail);
return true; }
catch (System.Net.Mail.SmtpException ex)
{
return false;
} }
}
}
C#-MailHelper的更多相关文章
- C# 通过smtp服务器进行邮件发送 MailHelper
C# 通过smtp服务器进行邮件发送 MailHelper.cs using System; using System.Data; using System.Configuration; using ...
- 发送邮件工具类MailHelper
using System; using System.Net; using System.Net.Mail; using System.Text; using System.Threading; na ...
- MailHelper
using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Co ...
- c# 通过MailHelper发送QQ邮件
发送的方法 appsetting内容 第一个是发送邮件qq账号,第二个是QQ邮箱的POP3/SMTP服务码(下面会说怎么获取),第三个是服务器,第四个是端口 获取QQ邮箱的POP3/SMTP服务码 1 ...
- .NET开发邮件发送功能的全面教程(含邮件组件源码)
今天,给大家分享的是如何在.NET平台中开发“邮件发送”功能.在网上搜的到的各种资料一般都介绍的比较简单,那今天我想比较细的整理介绍下: 1) 邮件基础理论知识 2) ...
- ASP.NET MVC 发送邮件(异步)
最近写邮件发送搞死人了,最后的结果,真是醉了,现整理如下: 网上一搜一大把,到处都是.NET发送邮件的方法,我这里也大同小异的写了一个. 准备一个MailHelper.cs通用类,如下所示: 重要的命 ...
- C#之发送邮件【模板】+【封装】ZJ版
PS: 为了弥补上篇博客的不足,正好周六闲着没事.所以进行优化下,来个终结版 功能实现:模板发送+自指定邮箱发送+解耦 总体预览如下: 各代码如下:(代码略多,所以都折叠了) 前台; @{ Layou ...
- 理解C# 4 dynamic(2) – ExpandoObject的使用
ExpandoObject的使用非常简单,很容易入手.上一篇里面已经有详细的介绍了,可以看这里(理解C# 4 dynamic(1) - var, object, dynamic的区别以及dynamic ...
- email
#region 邮件帮助类 //+-------------------------------------------------------------------+ //+ FileName: ...
随机推荐
- How to Plan and Configure YARN and MapReduce 2 in HDP 2.0
As part of HDP 2.0 Beta, YARN takes the resource management capabilities that were in MapReduce and ...
- Flink FileSink 自定义输出路径——StreamingFileSink、BucketingSink 和 StreamingFileSink简单比较
接上篇:Flink FileSink 自定义输出路径——BucketingSink 上篇使用BucketingSink 实现了自定义输出路径,现在来看看 StreamingFileSink( 据说是S ...
- Android Butterknife使用方法总结 IOC框架
前言: ButterKnife是一个专注于Android系统的View注入框架,以前总是要写很多findViewById来找到View对象,有了ButterKnife可以很轻松的省去这些步骤.是大神J ...
- Keras代码超详细讲解LSTM实现细节
1.首先我们了解一下keras中的Embedding层:from keras.layers.embeddings import Embedding: Embedding参数如下: 输入尺寸:(batc ...
- WXS-----学会使用WXS
学会使用WXS require函数用于引入其他WXS模块 不要重复引入两个wxs模块,不然后者会覆盖前者
- IntelliJ IDEA 下搭建vue项目工程
Vue 项目:运行 npm run dev 后报错 “'webpack-dev-server' 不是内部或外部命令,也不是可运行的程序 或批处理文件.” 前提: 电脑已经安装了node 和 npm, ...
- Python3实现自动查询成绩(主要使用的包有Tesseract-OCR、PIL、execjs、pytesseract、BeautifulSoup)
前提:本文仅作为技术训练,不可利用技术做非法的事. 某考试的成绩查询页面如下:查询成绩需要的数据有准考证号或者身份证.考生姓名.验证码.现在使用python来实现自动查询指定人员的考试成绩(不知道准考 ...
- D1. Docker: win7 环境下安装 Docker
[下载与安装] win7.win8 等需要利用 docker toolbox 来安装,国内可以使用阿里云的镜像来下载,下载地址:http://mirrors.aliyun.com/docker-too ...
- [Oracle] - 使用 EXP / IMP 对数据库进行备份与还原
只有Oracle客户端环境,如何完整备份数据库? 方法1:在本地搭建与目标环境相同版本的服务端,远程访问执行导出命令.这种方式远程备份速度较慢(VPN环境下测试). 方法2:登陆客户端,先导出数据库表 ...
- 应用编排服务之ELK技术栈示例模板详解
日志对互联网应用的运维尤为重要,它可以帮助我们了解服务的运行状态.了解数据流量来源甚至可以帮助我们分析用户的行为等.当进行故障排查时,我们希望能够快速的进行日志查询和过滤,以便精准的定位并解决问题. ...