`
yiyeqinghuasoon
  • 浏览: 644639 次
文章分类
社区版块
存档分类
最新评论

ASP.NET 2.0发送电子邮件中存在的问题

 
阅读更多

出处: 天极yesky 作者:朱先忠编译 时间:2006-11-15 11:26:00

在新发行的ASP.NET 2.0版本中,微软不再建议使用System.Web.Mail命名空间而代之以新的System.Net.Mail命名空间。在这个新库中引入了许多新特征,但是在发送邮件的方式方面也相应地带入了一些小错误。


一、 发送邮件
在详细讨论这些小错误之前,让我们先看一段示例代码(我们假定你已经在文件开始添加了"using System.Net.Mail"):

MailMessage msg = new MailMessage();
msg.From = new MailAddress("address@domain.com", "Person's Name");
msg.To.Add(new MailAddress("destination@domain.com", "Addressee's Name");
msg.To.Add(new MailAddress("destination2@domain.com", "Addressee 2's Name");
msg.Subject = "Message Subject";
msg.Body = "Mail body content";
msg.IsBodyHtml = true;
msg.Priority = MailPriority.High;
SmtpClient c = new SmtpClient("mailserver.domain.com");
c.Send(msg);

上面的代码与以前版本中的实现差不太多,仅是在指定消息时作了一些小的改动。不必自己来构建一个地址,你完全可以让系统为你代劳。如果你指定一个电子邮件地址和一个名字,它将自动地在消息中显示如下内容:

"Person's Name" <destination></destination>

这正是一个电子邮件地址的"正确"格式。当然,你可以进一步把多个地址添加到To,CC和BCC集合中,其方式与上面完全相同。通过这种编程方式来实现发送大量消息要比分别发送每个消息要容易得多了-只需要把多个地址添加到BCC属性即可实现邮件的群发。


二、 存在的问题
现在,我们来分析一下其中存在的小错误。
如前面所提及,这个新的命名空间中带有一些小错误。第一个是,当你发送一封电子邮件时,邮件的头部信息全部是以小写字母形式添加的。然而,在针对SMTP邮件RFC的规范中并没有指定邮件头部应该怎样大写;但是,许多垃圾邮件过滤程序却限制了头部没有正确大写的电子邮件消息。
另一个错误与优先权设置有关系-通过优先权设置,用户可以指定一个消息在邮件客户端的重要程度。由于邮件头部的这种格式化方式(全部转化为小写),所以,我的邮件程序(Eudora)无法识别相应的优先权标志,因而也就不会专门标记出此邮件的重要程度。尽管这看上去有些琐碎,但是转换到新版本的System.Web.Mail以后这看上去并没有明显理由。
所以,我还会继续探讨这个问题,如果实在找不到一个好的补救办法,那么我只要回到以前的System.Web.Mail以更有效了解决上面的警告问题。

分享到:
评论

相关推荐

    ASP.NET 2.0网络编程自学手册

    第3篇为实例篇(第14章~第22章),主要结合实际开发经验介绍利用ASP.NET+SQL Server2000制作会员注册与登录,ASP.NET制作文件上传与下载、ASP.NET制作电子邮件发送和接收、ASP.NET+SQL Server 2000制作留言本、ASP...

    Scott Mitchell的ASP.NET2.0数据指南中文版

    Scott Mitchell的ASP.NET2.0数据指南中文版.part1(共两个压缩包) 这本书本是英文版,由博客园上的mvp们一起翻译过来的。这个是整本书的打包,方便查询。 作者简介 Scott Mitchell,著有六本ASP/ASP.NET方面的书...

    asp.net2.0项目之电子商务网源码(VS2005+SQL2005)

    Asp.net2.0电子商务网源码 采用三层架构开发,前台集成了产品在线展示,用户注册、在线调查、在线投稿 后台有类别管理\图书管理\订单管理\会员管理\配送范围管理\邮件列表\广告管理\友情链接管理等 后台添加图书...

    精通ASP.NET2.0的Web2.0+电子教程.rar

    精通ASP.NET2.0的Web2.0+电子教程 本书重点介绍了使用ASP.NET 2.0(C#)技术开发Web 2.0时代的热门网 络应用系统(如RSS、Blog、Tags、Web Servicc、BBS、XML、Ajax、WIKI等 )的方法,以及开发这些系统...

    ASP.NET2.0典型模块(17-22)ASP.NET2.0典型模块(1-16)

    代码 实现在线支付的示例 第8章(\C08) 示例描述:本章演示了如何实现电子邮件的发送和接收 JMail接收 使用第三方组件实现邮件的发送和接收示例 SimpleMail 使用ASP.NET的Net类自定义邮件...

    Asp.net2.0电子商务网源码 (asp.net c#)

    Asp.net2.0电子商务网源码 采用三层架构开发,前台集成了产品在线展示,用户注册、在线调查、在线投稿 后台有类别管理\图书管理\订单管理\会员管理\配送范围管理\邮件列表\广告管理\友情链接管理等 后台添加图书...

    Asp.net2.0电子商务网源码,采用ASP.NET三层架构开发

    Asp.net2.0电子商务网源码,采用ASP.NET三层架构开发 前台集成了产品在线展示,用户注册、在线调查、在线投稿 台有类别管理\图书管理\订单管理\会员管理\配送范围管理\邮件列表\广告管理\友情链接管理等 后台添加...

    Asp.net2.0电子商务网源码

    Asp.net2.0电子商务网源码 采用三层架构开发,前台集成了产品在线展示,用户注册、在线调查、在线投稿 后台有类别管理\图书管理\订单管理\会员管理\配送范围管理\邮件列表\广告管理\友情链接管理等 后台添加图书...

    ASP.NET2.0发送电子邮件

    里面包含源代码,直接复制即可!支持附件以及多人发送!

    《ASP.NET 2.0网络编程从入门到精通》 目录 pdf

    本书从易到难、由浅入深、循序渐进地介绍了ASP.NET 2.0(C#)的知识点及其Web应用程序的开发技术。 本书内容通俗易懂,使用了大量的实例使读者更加深刻理解所学习的知识,更好地进行开发实践。 本书共分为14章,从...

    Asp.net2.0 电子商务网源码开源

    Asp.net2.0电子商务网源码 绝对开源!~你还在等什么呢?赶快下载吧!~ 采用三层架构开发,前台集成了产品在线展示,用户注册、在线调查、在线投稿 后台有类别管理\图书管理\订单管理\会员管理\配送范围...

    asp.net 2.0从入门到精通(源代码)

    然后介绍了ASP.NET2.0的基本开发技术,如服务器控件、ADO.NET、ASP.NET基本对象、站点导航等,并使用这些技术实现了6个网络应用开发的常用模块,如网络用户管理、网络硬盘、留言板、邮件系统、流量统计、在线...

Global site tag (gtag.js) - Google Analytics