透明 发表于 2015-1-16 22:28:31

ASP.NET网页设计分享:.NET发送邮件

它有很多缺点的,有兴趣可以到网上去搜索一下。于是微软有发明了“下一代”C++:C++/CLI语言,这个可以解决在.NETFramework中,托管C++产生的问题。在《程序员》杂志上,lippman和李建中合作连载介绍了C++/CLI语言。明天在网上汇集了一些利用.net发送邮件的材料,如今拿出来和人人分享一下!在.net中,.NET自带了发送邮件的功效,在VS2003中该功效已封装进.NETFramework的System.Web.Mail的定名空间里了,在VS2005下更多的是使用System.Net.Mail定名空间了。明天在网上汇集了一些利用.net发送邮件的材料,如今拿出来和人人分享一下!在.net中,.NET自带了发送邮件的功效,在VS2003中该功效已封装进.NETFramework的System.Web.Mail的定名空间里了,在VS2005下更多的是使用System.Net.Mail定名空间了。
利用这个定名空间下的类,就能够很简单的构建一个发送邮件的程序,所必要的仅仅是在windows中架构好SMTP服务器。
System.Web.Mail定名空间:
这个定名控件下包括了以下的工具和三个属性:
包括的工具:
MailAttachment:与邮件附件有关的工具类
MailMessage:邮件主体
SmtpMail:卖力发送邮件的SMTP协定。
属性列表:
MailEncoding:邮件的编码(Base64,UUEncode)
MailFormat:邮件的格局(Html超文本格局,Text纯文本格局)
MailPriority:邮件优先级(High,Medium,Low)
构建MailMessage工具:
MailMessage工具是邮件的承载主体,一般能够先构建好MailMessage工具,然后设置它的属性的体例来构建邮件程序,上面列出了的是一些经常使用的属性:
Attachments:邮件附件
Bcc:暗送地点
Body:邮件主体
BodyFormat:邮件格局(html,text)
Cc:抄送地点
From:发信人地点
Priority:邮件优先级(High,Medium,Low)
Subject:邮件主题
To:吸收人地点
UrlContentBase:在HTML格局邮件中的URL编码体例
UrlContentLocation:邮件信息的优先级(High,Medium,Low)
利用SMTPMail发送邮件
构建好MailMessage工具以后,还必要利用别的一个工具-SMTPMail-来发送邮件,SMTPMAIL有一个很主要的办法:Send,该办法有两个分歧用法,个中一个能够仅仅发送全部的MailMessage工具:
SmtpMail.Send(myEmailObject);
别的一个同意你分离指定发送者,收邮件地点,邮件主题,邮件主题,然后再发送进来:
SmtpMail.Send(strFrom,strTo,strSubject,strBody);
例子程序:
来看看上面这一个完全的例子,在这个例子中,利用System.Web.Mail定名空间,我们先创立一个MailMessage工具,然后设置部分属性,最初利用SmtpMail工具把它发送进来:
protectedvoidPage_Load(objectsender,EventArgse)
{
//CREATEAMAILMESSAGE
System.Web.Mail.MailMessagemyEmail=newSystem.Web.Mail.MailMessage();
//SETMESSAGEPARAMETERS
myEmail.From="chenjun@webjx.com";
myEmail.To="admin@webjx.com";
myEmail.Subject="ProductAvailabilityNotice";
myEmail.BodyFormat=System.Web.Mail.MailFormat.Html;
myEmail.Body="Thesunglassesyouexpressedinterestinarenowinstock.";
//SENDTHEMESSAGE
System.Web.Mail.SmtpMail.Send(myEmail);
//UPDATESTATUS
lblMailStatus.Text="Mailsuccessfullysent.";
}
<html>
<body>
<asp:Labelid="lblMailStatus"runat="server"/>
</body>
</html>
System.Net.Mail定名空间:
这个定名控件下包括了以下次要工具和次要属性:
包括的工具:
MailAddress:暗示电子邮件发件人或收件人的地点
Attachment:暗示电子邮件的附件
MailAddressCollection:存储与电子邮件联系关系的电子邮件地点
MailMessage:暗示可使用SmtpClient类发送的电子邮件
SmtpClient:同意使用程序利用复杂邮件传输协定(SMTP)来发送电子邮件。
属性列表:
DeliveryNotificationOptions:形貌电子邮件的传送关照选项
MailPriority:指定MailMessage的优先级
SmtpAccess:指定同意的复杂邮件传输协定(SMTP)服务器会见级别
SmtpDeliveryMethod:指定怎样发送电子邮件
SmtpStatusCode:指定利用SmtpClient类发送电子邮件的了局
构建MailMessage工具:
MailMessage工具是邮件的承载主体,一般能够先构建好MailMessage工具,然后设置它的属性的体例来构建邮件程序,上面列出了的是一些经常使用的属性:
Attachments:邮件附件
Bcc:暗送地点
Body:邮件主体
Cc:抄送地点
From:发信人地点
Subject:邮件主题
To:吸收人地点
利用SmtpClient发送邮件
构建好MailMessage工具以后,还必要利用别的一个工具-SmtpClient-来发送邮件,SmtpClient有一个很主要的办法:Send,能够发送全部的MailMessage工具:
SmtpClient.Send(MailMessage);
在这个例子中,利用System.Net.Mail定名空间
staticstringstrHost=String.Empty;
staticstringstrAccount=String.Empty;
staticstringstrPwd=String.Empty;
staticstringstrFrom=String.Empty;
///<summary>
///发送邮件
///</summary>
///<paramname="to">吸收方邮件地点</param>
///<paramname="title">邮件题目</param>
///<paramname="content">邮件注释内容</param>
publicstaticboolsendmail(stringto,stringtitle,stringcontent)
{
strHost="smtp.webjx.com";//STMP服务器地点
strAccount="abc@webjx.com";//SMTP服务帐号
strPwd="password";//SMTP服务暗码
strFrom="chenjun@webjx.com";//发送方邮件地点
SmtpClient_smtpClient=newSmtpClient();
_smtpClient.DeliveryMethod=SmtpDeliveryMethod.Network;//指定电子邮件发送体例
_smtpClient.Host=strHost;;//指定SMTP服务器
_smtpClient.Credentials=newSystem.Net.NetworkCredential(strAccount,strPwd);//用户名和暗码
MailMessage_mailMessage=newMailMessage(strFrom,to);
_mailMessage.Subject=title;//主题
_mailMessage.Body=content;//内容
_mailMessage.BodyEncoding=System.Text.Encoding.UTF8;//注释编码
_mailMessage.IsBodyHtml=true;//设置为HTML格局
_mailMessage.Priority=MailPriority.High;//优先级
try
{
_smtpClient.Send(_mailMessage);
returntrue;
}
catch
{
returnfalse;
}
}

如果需要重新编写代码,几乎任何一门计算机语言都可以跨平台了,还用得着Java嘛,而且像PHP/C#等语言不需要修改代码都可以跨Windows/Linux。

冷月葬花魂 发表于 2015-1-16 22:56:17

ASP.NET网页设计分享:.NET发送邮件

但是java靠开源打出的一片天地,特别是在微软的垄断下能打开今天的局面还是有它的生命力的。

透明 发表于 2015-1-17 19:05:26

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。

乐观 发表于 2015-1-21 07:44:39

ASP.NET:ASP.net是Microsoft.net的一部分,作为战略产品,不仅仅是ActiveServerPage(ASP)的下一个版本;它还提供了一个统一的Web开发模型,其中包括开发人员生成企业级Web应用程序所需的各种服务。ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。

简单生活 发表于 2015-1-30 11:27:34

如今主流的Web服务器软件主要由IIS或Apache组成。IIS支持ASP且只能运行在Windows平台下,Apache支持PHP,CGI,JSP且可运行于多种平台,虽然Apache是世界使用排名第一的Web服务器平台。

变相怪杰 发表于 2015-2-6 10:58:31

Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。

小女巫 发表于 2015-2-16 00:30:30

我的意思是.net好用,从功能上来说比JAVA强还是很明显的。

蒙在股里 发表于 2015-3-4 19:22:30

ASP.net的速度是ASP不能比拟的。ASP.net是编译语言,所以,当第一次加载的时候,它会把所有的程序进行编译(其中包括worker进程,还有对语法进行编译,形成一个程序集),当程序编译后,执行速度几乎为0。

再见西城 发表于 2015-3-11 20:47:05

ASP.net的服务器,要求安装一个.net环境,当然我这里指的是windows系统,顺便点一下,.net只能放在windows环境里来运行。Asp.net1.1的就装Framework1.1,Asp.net2.0的就装Framework2.0。

飘飘悠悠 发表于 2015-3-19 12:38:03

ASP是把代码交给VBScript解释器或Jscript解释器来解释,当然速度没有编译过的程序快了。

小魔女 发表于 2015-3-28 02:54:10

这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。
页: [1]
查看完整版本: ASP.NET网页设计分享:.NET发送邮件