仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1540|回复: 10
打印 上一主题 下一主题

[学习教程] ASP.NET网页设计分享:.NET发送邮件

[复制链接]
透明 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:28:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
它有很多缺点的,有兴趣可以到网上去搜索一下。于是微软有发明了“下一代”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兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
简单生活 该用户已被删除
5#
发表于 2015-1-30 11:27:34 | 只看该作者
如今主流的Web服务器软件主要由IIS或Apache组成。IIS支持ASP且只能运行在Windows平台下,Apache支持PHP,CGI,JSP且可运行于多种平台,虽然Apache是世界使用排名第一的Web服务器平台。
变相怪杰 该用户已被删除
6#
发表于 2015-2-6 10:58:31 | 只看该作者
Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。
小女巫 该用户已被删除
7#
发表于 2015-2-16 00:30:30 | 只看该作者
我的意思是.net好用,从功能上来说比JAVA强还是很明显的。
蒙在股里 该用户已被删除
8#
发表于 2015-3-4 19:22:30 | 只看该作者
ASP.net的速度是ASP不能比拟的。ASP.net是编译语言,所以,当第一次加载的时候,它会把所有的程序进行编译(其中包括worker进程,还有对语法进行编译,形成一个程序集),当程序编译后,执行速度几乎为0。
再见西城 该用户已被删除
9#
发表于 2015-3-11 20:47:05 | 只看该作者
ASP.net的服务器,要求安装一个.net环境,当然我这里指的是windows系统,顺便点一下,.net只能放在windows环境里来运行。Asp.net1.1的就装Framework1.1,Asp.net2.0的就装Framework2.0。
飘飘悠悠 该用户已被删除
10#
发表于 2015-3-19 12:38:03 | 只看该作者
ASP是把代码交给VBScript解释器或Jscript解释器来解释,当然速度没有编译过的程序快了。
小魔女 该用户已被删除
11#
发表于 2015-3-28 02:54:10 | 只看该作者
这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 23:28

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表