.net(C#)发送EMail
来源:互联网 发布:单片机4m晶振 串口 编辑:程序博客网 时间:2024/05/20 21:57
当工作审批流程(人事申请,审批,IT申请审批,出差申请审批)到达某种状态时,往往需要发送邮件通知给审批人或者申请人以提醒。本文利用C#完成了邮件自动发送的功能。
1.实体参数的定义,这里主要用到了申请人,审批人,以及审批状态等参数。
public class EMailModel { //审批人姓名 public string ApprovalName { get; set; } //申请人姓名 public string ApplyName { get; set; } //审批人EMail public string ApprovalEMail { get; set; } //申请人EMail public string ApplyEmail { get; set; } //False表示审批,True表示完成 public bool State { get; set; } }
2.邮件发送核心方法。以QQ邮箱和服务器做为例子。实际应用中,可根据情况进行设置。QQ邮箱必须设置开启SMTP服务与EnableSSL. 关于开启QQ邮箱SMTP服务,可登陆QQ邮箱,通过设置->帐户->开启服务来设置。
public bool sendEmail(EMailModel model) { string approvalMailBody = @"尊敬的{0},你好! 您的下属{1}的出差申请正在等待您的审批,请通过登陆我的审批中进行审批.谢谢!"; string finishMailBody = @"尊敬的{0},你好! 您的出差申请审批流程已完成。请通过登陆我的申请中进行查看.谢谢!"; bool result = true; MailMessage myMail = new MailMessage(); MailAddress fromAddr = new MailAddress("zheng.luan@qq.com"); string toAddr = string.Empty; string mailBody = string.Empty; if (model.State) { toAddr = model.ApplyEmail; string applyName = UtilityMethods.inputParamNullHandler(model.ApplyName); mailBody = string.Format(finishMailBody, applyName); } else { toAddr = model.ApprovalEMail; string approveName = UtilityMethods.inputParamNullHandler(model.ApprovalName); string applyName = UtilityMethods.inputParamNullHandler(model.ApplyName); mailBody = string.Format(approvalMailBody, approveName, applyName); } if (string.IsNullOrEmpty(toAddr)) { result = false; } else { myMail.From = fromAddr; myMail.To.Add(toAddr); myMail.Subject = "出差申请审批提醒邮件"; myMail.Body = mailBody; SmtpClient client = new SmtpClient("smtp.qq.com", 587); client.EnableSsl = true; client.Credentials = new NetworkCredential("zheng.luan@qq.com", "ppxtvvionwmdejih"); try { client.Send(myMail); } catch (Exception e) { string msg = e.Message; result = false; } } return result; }
3.参数转换代码,主要是用在当用户名等非必要信息没有获取到时,设置默认Empty的值,不至于程序报错。
public static string inputParamNullHandler(string input) { if (null != input) { } else { input = string.Empty; } return input; }
0 0
- .net(C#)发送EMail
- Asp.net(C#) 发送Email的用法
- ASP.net发送Email
- asp.net 发送email
- 用.net发送email
- ASP.net发送Email
- asp.net 发送Email
- .net 多线程发送Email
- ASP.net发送email
- .net 发送Email
- .NET 发送EMAIL邮件
- ASP.NET发送EMAIL
- asp.net发送Email
- 发送email类(C#)
- C语言发送email
- C#---Email发送
- [C]ASP.NET结合COM组件发送Email
- C#.NET发送EMAIL的几种方法
- 日志操作利器log4cxx 分享
- 动态获取图片链接并在照片墙显示
- csdn客服qq
- IOS 计算文件的大小
- Go语言学习之errors包(The way to go)
- .net(C#)发送EMail
- 4412裸机开发
- Java线程:线程的调度-休眠
- 提取不重复的整数
- 【bug日常】Referenced file contains errors (http://java.sun.com/xml/ns/j2ee/webapp_2_4.xsd). For more
- java命令执行jar包的方式
- android6.0以上设备连接不上蓝牙问题
- 2017腾讯暑期实习-产品经理二面(霸面)
- spring-注解