发送基于.NET平台的邮件群发系统研究[精品资料]

邮件群发系统  时间:2021-01-31  阅读:()

基于.NET平台的邮件群发系统研究-精品资料

本文档格式为WORD,感谢你的阅读。

最新最全的学术论文期刊文献年终总结年终报告工作总结个人总结述职报告实习报告单位总结

摘要为了更好地实现邮件群发提出了利用委托机制实现客户端实时监控邮件的发送情况、利用多个发送者的轮询机制实现了发送的可靠性、利用反射机制实现了自适应不同数据库服务器的切换、利用多线程异步调用机制实现性能的提高、利用过滤机制分别处理格式不正确的发送者和接收者邮箱的设计思路。此研究保证了接收者只会接收一份相同邮件能实时反映邮件的发送情况具有实际借鉴价值。

关键词关键词 邮件群发实时监控反射机制

TP302A16727800 2013 011005002

0引言

邮件群发被广泛应用于电子商务和办公系统等领域中已成为提高企业竞争力和影响力的一种重要手段。 .NET环境下的System.Net.Mail命名空间包含用于将电子邮件发送到简单邮件传输协议 SMTP 服务器进行传送的类其中MailMessage类表示邮件的内容 SmtpClient类将电子邮件传输到指定用于邮件传送的SMTP主机 Attachment类用于创建邮件附件。文献[2-6]主要研究了如何实现邮件群发但是对于邮件群发的可靠性和实时监控等方面涉及较少。本文提出了“委托+轮询+反射+异步+过滤”等机制实现了邮件群发的实际需求。

1利用委托实现实时监控

实时监控就是要在邮件群发过程中实时反映邮件发送状况包括发送进度、 已经发送个数、需发总数、失败个数信息发送完毕后弹出结果消息框具体情况如图1所示。

图1邮件发送及实时监控界面

由于系统采用表示层、业务层和数据访问层三层架构而邮件发送是在业务层实现和调用的那么如何在业务层调用的位置去实时控制表示层的相关进度控件呢解决办法就是利用委托实现回调 回调的方法在界面层注册实现可以实时控制界面进度控件。而回调的触发事件通过发送邮件的方法调用具体思路如图2所示。

图2委托实现实时监控

2利用轮询实现可靠性

可靠性指要保证每个接收者能接收到并且只会接收一份相同邮件。当进行邮件群发的时候 邮件服务器可能来不及接收或者以为是垃圾邮件拒绝接收。本文采用了两种解决措施一是使用多个发送者减少被邮件服务器认为垃圾邮件的可能性二是对发送失败的邮件可以继续不断发送。两种措施都需要进行轮询发送每个发送者按周期T发送给T个接收者接着下一个发送者发送直至所有接收者都被发送一次发送完毕。对于失败的邮件也是这样轮询发送。算法思路如图3所示失败邮件发送如图4所示。

3利用反射机制实现自适应不同数据库服务器切换邮件的发送者和接受者信息都存放在数据库中而不同客户可能使用不同的数据库服务器需要考虑数据库服务器的可移植性如从SqlServer切换成Oracle这主要通过反射机制来实现。 IDAL组件中定义了数据访问接口 SQLServerDAL和OracleDAL等组件是依据不同的数据库服务器对IDAL的具体实现而具体实现依赖DBUtility组件该组件中包含了SQLServerHelper和OracleHelp等具体数据库服务器引擎组件代码 DALFactory工厂组件利用反射机制、配置文件和静

态工厂模式动态产生数据访问组件对象设计思路如图5所示。

利用反射机制实现的主要代码如下namespace DALFactory{public sealed class DataAccess {private static readonly string path =

ConfigurationManager.AppSettings["DALAssembly"] public static IDAL. IEmail CreateEmail   {string className=path+".Email"return IDAL. IEmail Assembly.Load

path .CreateInstance className 

} …

图5反射机制实现数据库服务器切换

4其它

为了提高邮件群发的性能使用了异步调用发送机制在邮件发送完毕的回调方法中实现对界面进度条的回调。

//注册异步发送的回调方法client.SendCompleted += new

SendCompletedEventHandler client_SendCompleted 

AsyncArgs asyncArgs= new AsyncArgs   asyncArgs. emailData = emailDataasyncArgs. cpBar = cpBarclient.SendAsync message asyncArgs  //异步发送邮件static void client_SendCompleted objectsender

System.ComponentModel.AsyncCompletedEventArgse {

AsyncArgs asyncArgs = AsyncArgs e.UserStateif e.Error == null {

//发送成功处理}

else {

//发送失败处理}asyncArgs. cpBar.BarChange    //事件触发 回调winform中订阅方法

过滤机制主要使用正则表达式对发送和接收邮件的格式进行验证若发送邮件格式错误则在数据库中打上错误标记处理下一个发送者并在发送失败邮件功能中不再使用该发送者若是接收邮件格式错误也打上标记并回调界面进度条处理下一个接收者。

5结语

邮件群发首先要考虑发送的可靠性避免接收者没有收到或者多收邮件。虽然系统使用轮询机制进行了处理但是通过企业自己的邮件服务器发送效果会更好。

阅读相关文档:基于单片机的三相正弦波发生器设计 基于结构矩阵软的件需求变化追溯方法研究 最严格水资源管理制度的和谐论解读 从活动理论框架看我国协作学习模式发展 基于综合性研究视角的数字图书馆价值探析大学生社交网络应用现状调查研究 领域本体支持下的语义查询扩展研究基于互联网技术与可靠度理论的教学管理实证分析与应用研究 Flash中无法导入声音的解决办法研究 一种高效率的.NET平台Excel文件控制方法专家评价网络信息服务平台构建研究 《数据结构》学习方法探析 南水北调中线明渠工程运行风险评价方法研究 国际物流集团数据交换平台架构与实现 基于Flex技术的信息展示平台应用研究

最新最全【学术论文】 【总结报告】 【演讲致辞】 【领导讲话】 【心得体会】【党建材料】 【常用范文】 【分析报告】 【应用文档】 免费阅读下载

*本文收集于因特网所有权为原作者所有。若侵犯了您的权益请留言。我将尽快处理多谢。 *

GreenCloudVPS($30/年),500G大硬盘VPS,10Gbps带宽

GreenCloudVPS最近在新加坡DC2节点上了新机器,Dual Xeon Silver 4216 CPU,DDR4内存,10Gbps网络端口,推出了几款大硬盘VPS套餐,基于KVM架构,500GB磁盘起年付30美元。除了大硬盘套餐外,还加推了几款采用NVMe硬盘的常规套餐,最低年付20美元。不过需要提醒的是,机房非直连中国,尤其是电信用户ping值感人,包括新加坡DC1也是如此。大硬盘VPS...

totyun:香港cn2 vps,5折优惠,$6/月,10Mbps带宽,不限流量,2G内存/2核/20g+50g

totyun,新公司,主要运作香港vps、日本vps业务,接入cn2网络,不限制流量!VPS基于KVM虚拟,采用系统盘和数据盘分离,从4G内存开始支持Windows系统...大家注意下,网络分“Premium China”、“Global”,由于站长尚未测试,所以也还不清楚情况,有喜欢吃螃蟹的尝试过不妨告诉下站长。官方网站:https://totyun.com一次性5折优惠码:X4QTYVNB3P...

HostKvm($4.25/月),俄罗斯CN2带宽大升级,俄罗斯/香港高防限量5折优惠进行中

HostKvm是一家成立于2013年的国外VPS服务商,产品基于KVM架构,数据中心包括日本、新加坡、韩国、美国、俄罗斯、中国香港等多个地区机房,均为国内直连或优化线路,延迟较低,适合建站或者远程办公等。本月,商家旗下俄罗斯、新加坡、美国、香港等节点带宽进行了大幅度升级,俄罗斯机房国内电信/联通直连,CN2线路,150Mbps(原来30Mbps)带宽起,目前俄罗斯和香港高防节点5折骨折码继续优惠中...

邮件群发系统为你推荐
qq空间首页QQ空间的主页麒麟990和骁龙865哪个好海思麒麟990和骁龙710哪个好?燃气热水器和电热水器哪个好燃气热水器好还是电热水器好?浏览器哪个好用浏览器哪个最好用?核芯显卡与独立显卡哪个好核芯显卡和独立显卡有什么区别?最好的是哪个?手机管家哪个好有哪些人下了手机管家,最好的是哪个?手机炒股软件哪个好手机炒股软件车险哪个好汽车保险买哪个公司的好qq空间登录界面强行进入别人qq空间YunOS手机显示yunos停止运行是什么意思
深圳虚拟主机 青岛虚拟主机 哈尔滨域名注册 php主机空间 租服务器价格 已备案域名出售 新世界电讯 天猫双十一秒杀 租空间 魔兽世界台湾服务器 免费吧 国外代理服务器软件 可外链相册 t云 免费网页空间 如何注册阿里云邮箱 流媒体加速 西安主机 阿里云手机官网 xuni 更多