【干货】.NET开发通用组件发布(二) 邮件发送组件
组件介绍和合作开发
http://www.cnblogs.com/MrHuo/p/MrHuoControls.html
邮件发送组件
邮件发送组件采用常用的SMTP发送方式,需要添加以下格式的配置文件。
1、配置文件:
文件名:SMTPConfig.xml
文件内容:
<?xml version="1.0" encoding="utf-8" ?> <SMTPConfig> <SMTPServer>smtp.qq.com</SMTPServer> <UserName>491217650@qq.com</UserName> <UserPassword>******</UserPassword> <Port>25</Port> <EnableSsl>false</EnableSsl> <Encoding>UTF-8</Encoding> <DefaultSender>491217650@qq.com</DefaultSender> <DefaultSenderName>[MrHuoStudio]</DefaultSenderName> <IsBodyHtml>true</IsBodyHtml> <IsAsyncSend>true</IsAsyncSend> </SMTPConfig>
2、使用方法:
引用名称空间:using MrHuo.Controls.Email;
3、代码:
using (EmailSender email = new EmailSender()
{
Subject = "Email Subject",
EmailBody = "Hello World"
})
{
email.AddReceiver("491217650@qq.com");
email.AddReceiver("admin@mrhuo.com");
//这里可以添加N个邮件接收者
email.OnBeginSend += email_OnBeginSend;
//事件,邮件发送之前触发
email.OnEndSend += email_OnEndSend;
//事件,邮件发送完毕触发
email.OnError += email_OnError;
//事件,邮件发送出错时触发
email.Send();
}
void email_OnError(object sender, SendEmailFaildEventArgs e)
{
Console.WriteLine("发送给地址【" + e.MailAddress + "】的邮件发送失败,原因:" + e.Exception.Message);
}
void email_OnBeginSend(object sender, SendEmailEventArgs e)
{
Console.WriteLine("准备发送邮件:" + e.MailAddress);
}
void email_OnEndSend(object sender, SendEmailEventArgs e)
{
Console.WriteLine("邮件已发送到:" + e.MailAddress);
}
其中的事件,可有可无,根据开发者自己需求开发。
【干货】.NET开发通用组件发布(二) 邮件发送组件的更多相关文章
- 转:Node.js邮件发送组件- Nodemailer 1.0发布
原文来自于http://www.infoq.com/cn/news/2014/07/node.js-nodemailer1.0-publish Nodemailer是一个简单易用的Node.js邮件发 ...
- React Native组件(二)View组件解析
相关文章 React Native探索系列 React Native组件系列 前言 了解了RN的组件的生命周期后,我们接着来学习RN的具体的组件.View组件是最基本的组件,也是首先要掌握的组件,这一 ...
- 【干货】.NET开发通用组件发布(一) 介绍
组件介绍 集合个人和团都开发中遇到的一些通用组件,邮件发送组件.内容采集.CSV数据文件导入工具.日志记录组件.MVC验证登陆组件.MVC分页组件.短信发送组件和强大的Repeate和Repeater ...
- 【干货】.NET开发通用组件发布(四) 日志记录组件
组件介绍和合作开发 http://www.cnblogs.com/MrHuo/p/MrHuoControls.html 日志记录组件功能介绍 通过基类Logger,实现了文本记录日志和数据库记录日志两 ...
- React Native组件(三)Text组件解析
相关文章 React Native探索系列 React Native组件系列 前言 此前介绍了最基本的View组件,接下来就是最常用的Text组件,对于Text组件的一些常用属性,这篇文章会给出简单的 ...
- CI(CodeIgniter)框架下使用非自带类库实现邮件发送
在项目开发过程中,需要到了邮件提醒功能.首先想到的是CI自身带不带邮件发送类,查看帖子,发现CI本身自带,然后试着利用CI自身带的类库来实现,经过搜搜很多帖子,不少开发者反馈CI自身的Email类有问 ...
- (Swiftmailer)高效的PHP邮件发送库
Swiftmailer是一个类似PHPMailer邮件发送组件,它也支持HTML格式.附件发送,但它发送效率相当高,成功率也非常高,很多PHP框架都集成了Swiftmailer. Swiftmaile ...
- 微信小程序 自定义组件(modal) 引入组件
项目结构: 步骤一:创建组件 声明这一组文件为自定义组件 modal.json { "component": true, // 自定义组件声明 "usingCompone ...
- 给 Web 开发人员推荐的通用独立 UI 组件(二)
现代 Web 开发在将体验和功能做到极致的同时,对于美观的追求也越来越高.在推荐完图形库之后,再来推荐一些精品的独立 UI 组件.这些组件可组合在一起,形成美观而交互强大的 Web UI . 给 We ...
随机推荐
- Pyzo -- 好用的 Python 轻量级 IDE
近期 yvivid 使用 Python 进行科学计算类应用(如matlab部分应用场景) 比较好的 发行版本为 Anaconda: A free distribution for the SciPy ...
- GetMemory 函数解析
GetMemory函数 代码1: void GetMemory(char *p){ p = (char*)malloc(100);}int main(int argc, char *argv[]){ ...
- Java学习笔记--StringTokenizer的使用
拓展:Pattern.split替代String.split http://www.cnblogs.com/gnivor/p/4386978.html StringTokenizer是一个用来分隔St ...
- Netbeans 注释模板配置
工具->模板->展开Java 选中Java类->在编辑器中打开 修改如下: <#if package?? && package != ""& ...
- Ruby的语法糖
发现Ruby的语法糖好多,比如函数调用,参数列表可以写括号和不写括号.代码块可以用do end 或者 {}. 还有 if,unless后置.等等. 如果看Ruby代码看多了,你会发现,它很多地方的 ...
- 【转】关于Adapter的The content of the adapter has changed问题分析 关于Adapter的The content of the adapter has changed问题分析
原文网址:http://www.cnblogs.com/monodin/p/3874147.html 1.问题描述 1 07-28 17:22:02.162: E/AndroidRuntime(167 ...
- JVM基础和调优(三)
主要讲解垃圾回收的算法 上面我们已经了解到了,JVM的体系的结构,这次我们来说一下垃圾回收的算法. 1. 最开始的想法,或者说垃圾回收的最容易想到的就是:引用计数(reference count) 我 ...
- 好多邮箱的SMTP设置
http://731771490.diandian.com/post/2011-04-20/19576550
- JavaScript进阶篇 - -第1章 系好安全带
第1章 系好安全带 html,body { font-size: 15px } body { font-family: Helvetica, "Hiragino Sans GB", ...
- UVA 10198 Counting
Counting The Problem Gustavo knows how to count, but he is now learning how write numbers. As he is ...