`
javatoyou
  • 浏览: 1020843 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

asp.net 2.0发送和接收邮件总结

 
阅读更多
总结:.用asp.net 2.0发送邮件非常的方便,只需要用using System.Net.Mail命名空间下的类就可以完成发送邮件的功能,发送邮件的服务器可以有以下几种情况:
1.本地的smtp服务器
2.网络上的smtp服务器(smtp.163.com等)
以下是我测试发送邮件的范例,基本上都考虑到的所有的情况,如果还有什么没有考虑到的请给我留言,我接续完善其功能.
1.新建一网站名字叫SentEmailText.
2.添加一个新的页面default.aspx
代码如下:
<formid="Form1"runat="server"method="post">
<divid="content">
<divid="msg">
<divid="msg_title">SendEmailTest</div>
<divid="msg_prompt"></div>
<asp:ValidationSummaryid="msg_alarm"runat="server"></asp:ValidationSummary>
</div>
<divid="form">
<div>
<labelfor="SmtpServerText">Severname:</label>
<inputtype="text"id="SmtpServerText"name="SmtpServerText"runat="server"/>
</div>
<div>
<labelfor="SmtpServerPort">SeverPort:</label>
<inputtype="text"id="SmtpServerPort"name="SmtpServerPort"runat="server"/>
</div>
<div>
<labelfor="UserName">UserName:</label>
<inputtype="text"name="UserName"id="UserName"runat="server"/>
</div>
<div>
<labelfor="Pwd">Pwd:</label>
<inputtype="text"name="Pwd"runat="server"id="Pwd"/>
</div>
<div>
<labelfor="FromAddress">FromAddress:</label>
<inputtype="text"name="FromAddress"runat="server"id="FromAddress"/>
</div>
<div>
<labelfor="SendAddress">SendAddress:</label>
<inputtype="text"name="SendAddress"runat="server"id="SendAddress"/>
</div>
<div>
<labelfor="attachment">Attachment:</label>
<inputtype="file"runat="server"name="attachment"id="attachment"/>
</div>
<div>
<labelfor="txtSubject">EmailSubject:</label>
<inputtype="text"name="txtSubject"runat="server"id="txtSubject"/>
</div>
<div>
<labelfor="txtBody">EmailBody:</label>
<textareaname="txtBody"runat="server"rows="10"cols="50"id="txtBody"></textarea>
</div>
<div>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<inputtype="submit"value="SendEmail"class="prim"id="btnSend"runat="server"onserverclick="btnSend_ServerClick"/>
</div>
</div>
</div>
</form>
3.新建一个style的文件夹,添加样式页面,主要功能是表单的对齐样式,比较通用的设置(见附件)
4.添加一个mail的类文件,注意用于发送邮件考虑的几种情况(见附件)
usingSystem;
usingSystem.Text;
usingSystem.Net.Mail;
usingSystem.Net.Sockets;
usingSystem.IO;
publicclassMail
{
"Customvar"#region"Customvar"
privatestring_User;
privatestring_Pwd;
privatestring_Host;
privateint_Port;
#endregion


"Property"#region"Property"
publicintPort
{
get
{
return_Port;
}

set
{
_Port
=value;
}

}

publicstringUser
{
get
{
return_User;
}

set
{
_User
=value;
}

}

publicstringPwd
{
get
{
return_Pwd;
}

set
{
_Pwd
=value;
}

}

publicstringHost
{
get
{
return_Host;
}

set
{
_Host
=value;
}

}

#endregion


"OverLoad"#region"OverLoad"
publicMail(stringuser,stringpwd,stringhost,intport)
{//othersmtpserverincludingusernameandpwd
this._User=user;
this._Pwd=pwd;
this._Host=host;
this._Port=port;
}

publicMail(stringhost,intport)
{//othersmtpserverbutusernameandpwd
this._Port=port;
this._Host=host;
}

publicMail()
{//localsmtpserverandport=25
this._Port=25;
this._Host="127.0.0.1";
}

#endregion


"SendEmialincludinggroupsandattachment"#region"SendEmialincludinggroupsandattachment"
/**////<summary>
///Sentemailsincludingattachment
///</summary>
///<paramname="toUser">FromAddress</param>
///<paramname="toMail">ToAddress</param>
///<paramname="subject">ThesubjectofEmail</param>
///<paramname="body">ThebodyofEmail</param>
///<paramname="ishtml">HtmlOrText</param>
///<paramname="priority">ThepriorityofEmail</param>
///<paramname="filenames">theattachmentofemail(optional)</param>

publicvoidSendMailWithAttachment(stringtoUser,stringtoMail,stringsubject,stringbody,boolishtml,MailPrioritypriority,paramsstring[]filenames)
{
System.Net.Mail.MailMessagemsg
=newSystem.Net.Mail.MailMessage(toUser,toMail,subject,body);
msg.BodyEncoding
=Encoding.UTF8;
msg.Priority
=priority;
msg.IsBodyHtml
=ishtml;
if(filenames!=null)
{
foreach(stringsinfilenames)
{
msg.Attachments.Add(
newAttachment(s));
}

}

System.Net.Mail.SmtpClientsc
=newSmtpClient(Host,Port);
sc.EnableSsl
=false;
sc.Timeout
=3600000;
sc.UseDefaultCredentials
=false;
sc.Credentials
=newSystem.Net.NetworkCredential(_User,_Pwd);
sc.DeliveryMethod
=SmtpDeliveryMethod.Network;
try
{
sc.Send(msg);
}

catch(Exceptione)
{
throwe;
}

}

/**////<summary>
///SentEmailincludinggroupsandattachment
///</summary>
///<paramname="toUser">FromAddress</param>
///<paramname="toMail">ToAddress</param>
///<paramname="subject">ThesubjectofEmail</param>
///<paramname="body">ThebodyofEmail</param>
///<paramname="ishtml">HtmlOrText</param>
///<paramname="priority">ThepriorityofEmail</param>
///<paramname="filenames">TheattachmentofEmail(optional)</param>

publicvoidSendMailWithGroupWithAttachment(stringtoUser,stringtoMail,stringsubject,stringbody,boolishtml,MailPrioritypriority,paramsstring[]filenames)
{
string[]toMails=toMail.Split(';');
System.Net.Mail.MailMessagemsg
=newSystem.Net.Mail.MailMessage();
msg.From
=newMailAddress(toUser);
foreach(stringsintoMails)
{
msg.To.Add(s);
}

msg.Subject
=subject;
msg.Body
=body;
msg.BodyEncoding
=Encoding.UTF8;
msg.Priority
=priority;
msg.IsBodyHtml
=ishtml;
if(filenames!=null)
{
foreach(stringsinfilenames)
msg.Attachments.Add(
newAttachment(s));
}

System.Net.Mail.SmtpClientsc
=newSmtpClient(Host,Port);
sc.EnableSsl
=false;
sc.Timeout
=3600000;
sc.UseDefaultCredentials
=false;
sc.Credentials
=newSystem.Net.NetworkCredential(_User,_Pwd);
sc.DeliveryMethod
=SmtpDeliveryMethod.Network;
try
{
sc.Send(msg);
}

catch(Exceptione)
{
throwe;
}

}

#endregion


/**////<summary>
///ReceivedEmail
///</summary>

publicvoidReseiveMail()
{
stringServerHost="pop3."+this._Host;
TcpClienttcp
=newTcpClient(ServerHost,110);
NetworkStreamns
=tcp.GetStream();
StreamReadersr
=newStreamReader(ns);
StreamWritersw
=newStreamWriter(ns);
}

}

5.页面调用方式参见附件
6.附件下载附件(源代码下载)
付出最大努力,追求最高成就。
分享到:
评论

相关推荐

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

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

    ASP.NET 2.0开发技术大全

    mail发送与接收、文件处理技术、GDI+图形图像、多媒体技术、水晶报表、XML技术、ASP.NET 2.0中的成熟Ajan架构——Atlas、ASP.NET的配置与网站管理工具、ASP.NET应用程序安全性、程序调试与错误处理以及网站发布、...

    ASP.NET 2.0开发技术大全光盘

    WebService基础、创建和使用WebSerwice、E—mail发送与接收、文件处理技术、GDI+图形图像、多媒体技术、水晶报表、XMI技术、ASP.NET 2.0中的成熟Ajall架构——Atlas、ASP.NET的配置与网站管理工具、ASP.NET应用程序...

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

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

    零基础学ASP.NET 2.0电子书&源代码绝对完整版1

    示例描述:本章演示ASP.NET 2.0网站的预编译以及学习ASP.NET 2.0的前置知识。 WebSite文件夹 创建的ASP.NET 2.0 Web站点。 www文件夹 第一个用C#开发的Web应用程序。 bianyi.bat 编译网站的批处理文件。 ...

    《软件工程师入门 ASP.NET 2.0 网络编程自学手册》随书光盘 Part 2

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

    电子邮件发送和接收(ASP.net 2.0)

    本实例将介绍如何发送电子邮件和接收电子邮件。 附:实现电子邮件的接收功能时,首先要配置POP3服务。 在“控制面板”中双击“添加或删除程序”,“添加Windows组件向导”中选“电子邮件服务”单击“下一步”完成...

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

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

    b2c商城源代码(asp.net2.0)

    基于asp.net2.0 C#开发的网络商城 (一)、前台功能说明 ☆新闻专区 ☆全店商品 ☆会员中心 ☆购物车 ☆帮助中心 ☆客户留言 &lt;br/&gt;(二)、会员功能说明 ☆消息中心(会员可以给...

    ASP.NET2.0网络编程自学手册源代码(电子邮件发送与接受)

    人民邮电出版社的ASP.NET2.0网络编程自学手册第16章电子邮件发送与接受的源代码,学习邮件的发送与接受、了解Jmail组件的使用、掌握如何实现发送邮件、掌握如何接收邮件、掌握如何实现下载附件。

    零基础学ASP.NET 2.0&源代码绝对完整版1

    示例描述:本章演示ASP.NET 2.0网站的预编译以及学习ASP.NET 2.0的前置知识。 WebSite文件夹 创建的ASP.NET 2.0 Web站点。 www文件夹 第一个用C#开发的Web应用程序。 bianyi.bat 编译网站的批处理文件。 form...

    asp.net2.0+ajax聊天室

    本例采用asp.net2.0+ajax技术实现,不用数据库,采取2.0新概念Dictionary、LinkedList集合实现数据的处理. 所有发送、接收、显示在线用户列表等皆采用ajax技术完成,实现无刷新聊天的功能 Ajax的核心是JavaScript...

    精通ASP.NET2.0典型模块设计与实现

    精通ASP.NET2.0典型模块设计与实现,涵盖ASP.NET开发时常用的基本功能模块的设计与实现,包括:用户登录功能、在线投票、RSS的实现及应用、在线编辑器的原理及实现、在线支付、文件的上传和下载、电子邮件的发送和...

    ASP.NET 2.0+C#2.0+SQL SERVER 2005 经典项目 源代码

    5.电子邮件的发送和接收 6.文件的上传和下载 7.网络的图文验证功能 8.ASP.NET2.0中的防盗链技术 9.如何实现站内和站外的搜索 10.聊天室模块的实现 11.实现了留言板模块 12.新闻发布系统 13.在线考试系统 14.创建和...

    在ASP.NET2.0中通过Gmail发送邮件的代码

    在ASP.NET2.0中,发送邮件是很简单的,我们主要使用来自命名空间System.Net.Mail中的几个类,MailMessage和SmtpClient。 核心代码是很简洁的,如下: 代码如下: string to = “这里填写接收者的Email地址”; ...

    电子邮件发送与接收asp.net源码

    电子邮件发送与接收asp.net源码来自ASP.NET2.0网络编程书第16章源码

    ASP.net从入门到精通 光盘源码

    全书共分29章,包括ASP.NET 2.0开发入门、C#语言基础、ASP.NET的内置对象、ASP.NET 2.0 Web常用控件、数据验证技术、母版页、主题、数据绑定、使用ADO.NET操作数据库、数据控件、站点导航控件、Web用户常用控件、ASP...

    ASP.NET从入门到精通1

    全书共分29章,包括ASP.NET 2.0开发入门、C#语言基础、ASP.NET的内置对象、ASP.NET 2.0 Web常用控件、数据验证技术、母版页、主题、数据绑定、使用ADO.NET操作数据库、数据控件、站点导航控件、Web用户常用控件、ASP...

    ASP.NET从入门到精通2

    全书共分29章,包括ASP.NET 2.0开发入门、C#语言基础、ASP.NET的内置对象、ASP.NET 2.0 Web常用控件、数据验证技术、母版页、主题、数据绑定、使用ADO.NET操作数据库、数据控件、站点导航控件、Web用户常用控件、ASP...

Global site tag (gtag.js) - Google Analytics