欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【ASP.NET 2.0发送电子邮件中存在的问题】,下面是详细的分享!
ASP.NET 2.0发送电子邮件中存在的问题
在新发行的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@domain.com>
这正是一个电子邮件地址的"正确"格式。当然,你可以进一步把多个地址添加到To,CC和BCC集合中,其方式与上面完全相同。通过这种编程方式来实现发送大量消息要比分别发送每个消息要容易得多了-只需要把多个地址添加到BCC属性即可实现邮件的群发。
二、 存在的问题
现在,我们来分析一下其中存在的小错误。
如前面所提及,这个新的命名空间中带有一些小错误。第一个是,当你发送一封电子邮件时,邮件的头部信息全部是以小写字母形式添加的。然而,在针对SMTP邮件RFC的规范中并没有指定邮件头部应该怎样大写;但是,许多垃圾邮件过滤程序却限制了头部没有正确大写的电子邮件消息。
另一个错误与优先权设置有关系-通过优先权设置,用户可以指定一个消息在邮件客户端的重要程度。由于邮件头部的这种格式化方式(全部转化为小写),所以,我的邮件程序(Eudora)无法识别相应的优先权标志,因而也就不会专门标记出此邮件的重要程度。尽管这看上去有些琐碎,但是转换到新版本的System.Web.Mail以后这看上去并没有明显理由。
所以,我还会继续探讨这个问题,如果实在找不到一个好的补救办法,那么我只要回到以前的System.Web.Mail以更有效了解决上面的警告问题。
以上所分享的是关于ASP.NET 2.0发送电子邮件中存在的问题,下面是编辑为你推荐的有价值的用户互动:
相关问题:邮件服务器常见问题
答:常见的问题有: 一、25端口被占用:当安装了其他的邮件服务器软件或某些防病毒及防火墙软件时,经常会发生25端口被占用的情况,这样一来WinWebMail将不会有机会处理发往本服务器25端口的电子邮件。以下命令可以查看使用服务器25端口的是否是WinW... >>详细
相关问题:asp.net 2.0 中使用 mailmessage 自动发送电子邮件
答:去51.aspx搜一下邮件群发系统,应该就有,我以前下载一个,然后改下相应的代码就可以了~~ >>详细
相关问题:邮件发送
答:发电子邮件也需要专门的软件,不过好在IE都自带一个邮件工具,我们只需要对它进行一下设置就可以使用了。你需要做的设置包括:自己的E-mail地址和邮件服务器地址。 因为你在发E-mail时,你的信件不是直接发到对方的计算机上,而是发到你所在网上... >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
