组件介绍和合作开发

  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开发通用组件发布(二) 邮件发送组件的更多相关文章

  1. 转:Node.js邮件发送组件- Nodemailer 1.0发布

    原文来自于http://www.infoq.com/cn/news/2014/07/node.js-nodemailer1.0-publish Nodemailer是一个简单易用的Node.js邮件发 ...

  2. React Native组件(二)View组件解析

    相关文章 React Native探索系列 React Native组件系列 前言 了解了RN的组件的生命周期后,我们接着来学习RN的具体的组件.View组件是最基本的组件,也是首先要掌握的组件,这一 ...

  3. 【干货】.NET开发通用组件发布(一) 介绍

    组件介绍 集合个人和团都开发中遇到的一些通用组件,邮件发送组件.内容采集.CSV数据文件导入工具.日志记录组件.MVC验证登陆组件.MVC分页组件.短信发送组件和强大的Repeate和Repeater ...

  4. 【干货】.NET开发通用组件发布(四) 日志记录组件

    组件介绍和合作开发 http://www.cnblogs.com/MrHuo/p/MrHuoControls.html 日志记录组件功能介绍 通过基类Logger,实现了文本记录日志和数据库记录日志两 ...

  5. React Native组件(三)Text组件解析

    相关文章 React Native探索系列 React Native组件系列 前言 此前介绍了最基本的View组件,接下来就是最常用的Text组件,对于Text组件的一些常用属性,这篇文章会给出简单的 ...

  6. CI(CodeIgniter)框架下使用非自带类库实现邮件发送

    在项目开发过程中,需要到了邮件提醒功能.首先想到的是CI自身带不带邮件发送类,查看帖子,发现CI本身自带,然后试着利用CI自身带的类库来实现,经过搜搜很多帖子,不少开发者反馈CI自身的Email类有问 ...

  7. (Swiftmailer)高效的PHP邮件发送库

    Swiftmailer是一个类似PHPMailer邮件发送组件,它也支持HTML格式.附件发送,但它发送效率相当高,成功率也非常高,很多PHP框架都集成了Swiftmailer. Swiftmaile ...

  8. 微信小程序 自定义组件(modal) 引入组件

    项目结构: 步骤一:创建组件 声明这一组文件为自定义组件 modal.json { "component": true, // 自定义组件声明 "usingCompone ...

  9. 给 Web 开发人员推荐的通用独立 UI 组件(二)

    现代 Web 开发在将体验和功能做到极致的同时,对于美观的追求也越来越高.在推荐完图形库之后,再来推荐一些精品的独立 UI 组件.这些组件可组合在一起,形成美观而交互强大的 Web UI . 给 We ...

随机推荐

  1. rsync相关整理

    第一部分 rsync服务端配置 1.下载安装 a. yum安装.  yum install rsync    b. 下载rsync安装文件安装        #tar zxvf rsync-2.6.9 ...

  2. gcd - b- 201611302317

    谈到iOS多线程,一般都会谈到四种方式:pthread.NSThread.GCD和NSOperation.其中,苹果推荐也是我们最经常使用的无疑是GCD.对于身为开发者的我们来说,并发一直都很棘手,如 ...

  3. Ubuntu 下安装使用文件比较合并图形工具Meld

    Meld是一款跨平台的文件比较合并工具使用Python开发,具体内容参照官网:http://meldmerge.org/ 注意以下环境要求: Requirements Python 2.7 (Pyth ...

  4. form 和 ngModel

    参考 https://docs.angularjs.org/api/ng/type/ngModel.NgModelController https://docs.angularjs.org/api/n ...

  5. CMAKE 生成VS2008静态库工程 与 CMAKE使用,CMakeLists.txt编写总结

    cmake -G"Visual Studio 9 2008 Win64" 以上命令得用cd命令切换到顶层CMakeLists.txt的当前目录,才能生效 以下是CMakeLists ...

  6. Android开发多线程断点续传下载器

    使用多线程断点续传下载器在下载的时候多个线程并发可以占用服务器端更多资源,从而加快下载速度,在下载过程中记录每个线程已拷贝数据的数量,如果下载中断,比如无信号断线.电量不足等情况下,这就需要使用到断点 ...

  7. 浅谈单片机、ARM和DSP的异同

    犹记得当年读书的时候,老师说单片机.ARM.DSP有互通之处,都是CPU,但听老师讲都听不懂. 我该如何理解他们,并找出他们的异同呢?我们来看看行内人的看法: ICer,从事ARM CPU的SOC设计 ...

  8. Codeforces Round #322 (Div. 2) —— F. Zublicanes and Mumocrates

    It's election time in Berland. The favorites are of course parties of zublicanes and mumocrates. The ...

  9. phpcms:二、头部尾部包含

    1.index.html是默认的首页{template "content","header"}引入头部的模块{template "content&qu ...

  10. 【转】10分钟了解设计模式(C#)

    10分钟了解设计模式(C#) 最近把<大话设计模式>重温了下(看完序才知道原来作者是也是博客园园友,这本书的最早博客版本在这里).体会最深的就是面向接口编程的重要性,如何在自己的项目中进行 ...