ASP.NET 实现邮件发送和接受的功能(Mail)

简介:

前台代码:html
<% @ Page language="c#" Codebehind="WebMail.aspx.cs" AutoEventWireup="false" Inherits="MymailSys.WebMail"  %>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"  >
< HTML >
    
< HEAD >
        
< title > WebForm1 </ title >
        
< meta  content ="Microsoft Visual Studio .NET 7.1"  name ="GENERATOR" >
        
< meta  content ="C#"  name ="CODE_LANGUAGE" >
        
< meta  content ="JavaScript"  name ="vs_defaultClientScript" >
        
< meta  content ="http://schemas.microsoft.com/intellisense/ie5"  name ="vs_targetSchema" >
    
</ HEAD >
    
< body  MS_POSITIONING ="GridLayout" >
        
< form  id ="Form1"  method ="post"  runat ="server"  enctype ="multipart/form-data" >
            
< FONT  face ="宋体" >
                
< asp:label  id ="Label2"  style ="Z-INDEX: 101; LEFT: 224px; POSITION: absolute; TOP: 16px"  runat ="server"  Width ="292px"  Font-Names ="隶书"  Font-Size ="XX-Large" > 邮件发送系统 </ asp:label >
                
< TABLE  id ="Table1"  style ="Z-INDEX: 102; LEFT: 80px; WIDTH: 606px; POSITION: absolute; TOP: 96px; HEIGHT: 341px"  cellSpacing ="1"  cellPadding ="1"  width ="606"  align ="left"  border ="1" >
                    
< TR >
                        
< TD  style ="WIDTH: 178px; HEIGHT: 21px"  colSpan ="2" >< asp:label  id ="lblShowMsg"  runat ="server"  Width ="99px"  ForeColor ="Red" ></ asp:label ></ TD >
                        
< TD  style ="WIDTH: 178px; HEIGHT: 21px" >< FONT  face ="宋体" ></ FONT ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 122px" >< asp:label  id ="Label1"  runat ="server"  Width ="92px" > 发件人: </ asp:label ></ TD >
                        
< TD >< asp:textbox  id ="tbFrom"  runat ="server" ></ asp:textbox ></ TD >
                        
< TD >< asp:requiredfieldvalidator  id ="RequiredFieldValidator1"  runat ="server"  Width ="156px"  ControlToValidate ="tbFrom"  ErrorMessage ="发件人不能为空!"  Height ="26px" ></ asp:requiredfieldvalidator ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 122px" >< FONT  face ="宋体" > 收件人: </ FONT ></ TD >
                        
< TD >< asp:textbox  id ="tbTo"  runat ="server" ></ asp:textbox ></ TD >
                        
< TD >< FONT  face ="宋体" >< asp:requiredfieldvalidator  id ="RequiredFieldValidator2"  runat ="server"  Width ="152px"  ControlToValidate ="tbTo"  ErrorMessage ="收件人不能为空!"  Height ="26px" ></ asp:requiredfieldvalidator ></ FONT ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 122px" >< FONT  face ="宋体" > 邮件主题: </ FONT ></ TD >
                        
< TD >< asp:textbox  id ="tbSubject"  runat ="server" ></ asp:textbox ></ TD >
                        
< TD >< asp:requiredfieldvalidator  id ="RequiredFieldValidator3"  runat ="server"  Width ="160px"  ControlToValidate ="tbSubject"  ErrorMessage ="邮件主题不能为空!"  Height ="26px" ></ asp:requiredfieldvalidator ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 122px" > 邮件服务器: </ TD >
                        
< TD >< asp:textbox  id ="tbServer"  runat ="server" ></ asp:textbox ></ TD >
                        
< TD ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 122px" > 邮件用户名称: </ TD >
                        
< TD >< asp:textbox  id ="tbUserName"  runat ="server" ></ asp:textbox ></ TD >
                        
< TD >< asp:requiredfieldvalidator  id ="RequiredFieldValidator5"  runat ="server"  ControlToValidate ="tbUserName"  ErrorMessage ="用户名不能为空!" ></ asp:requiredfieldvalidator ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 122px" > 密码: </ TD >
                        
< TD >< asp:textbox  id ="tbPass"  runat ="server"  TextMode ="Password" ></ asp:textbox ></ TD >
                        
< TD >< asp:requiredfieldvalidator  id ="RequiredFieldValidator6"  runat ="server"  ControlToValidate ="tbPass"  ErrorMessage ="密码不能为空!" ></ asp:requiredfieldvalidator ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 122px" >< FONT  face ="宋体" > 优先级:
                                
< asp:dropdownlist  id ="ddlp"  runat ="server" >
                                    
< asp:ListItem  Value ="高" > </ asp:ListItem >
                                    
< asp:ListItem  Value ="低" > </ asp:ListItem >
                                    
< asp:ListItem  Value ="普通" > 普通 </ asp:ListItem >
                                
</ asp:dropdownlist ></ FONT ></ TD >
                        
< TD >< FONT  face ="宋体" > 邮件格式:
                                
< asp:dropdownlist  id ="ddlB"  runat ="server" >
                                    
< asp:ListItem  Value ="Text" > Text </ asp:ListItem >
                                    
< asp:ListItem  Value ="Html" > Html </ asp:ListItem >
                                
</ asp:dropdownlist ></ FONT ></ TD >
                        
< TD ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 122px" > 邮件附件: </ TD >
                        
< TD  colSpan ="2" >< INPUT  id ="FileSelect"  style ="WIDTH: 282px; HEIGHT: 22px"  type ="file"  size ="27"  name ="File1"  runat ="server" ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 178px"  colSpan ="3" >< FONT  face ="宋体" > 邮件内容: </ FONT ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 178px"  colSpan ="3" >< FONT  face ="宋体" >< asp:textbox  id ="tbBody"  runat ="server"  Width ="594px"  Height ="167px"  TextMode ="MultiLine" ></ asp:textbox ></ FONT ></ TD >
                    
</ TR >
                    
< TR >
                        
< TD  style ="WIDTH: 235px"  colSpan ="3" >< asp:button  id ="btnSubmit"  runat ="server"  Text ="发送" ></ asp:button >< FONT  face ="宋体" ></ FONT ></ TD >
                    
</ TR >
                
</ TABLE >
        
</ form >
        
</ FONT >
    
</ body >
</ HTML >

后台代码:cs
using  System;
using  System.Collections;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Web;
using  System.Web.SessionState;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.HtmlControls;
using  System.Web.Mail;
namespace  MymailSys
{
    
/// <summary>
    
/// WebForm1 的摘要说明。
    
/// </summary>

    public class WebMail : System.Web.UI.Page
    
{
        
protected System.Web.UI.WebControls.TextBox tbBody;
        
protected System.Web.UI.WebControls.DropDownList ddlB;
        
protected System.Web.UI.WebControls.DropDownList ddlp;
        
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator3;
        
protected System.Web.UI.WebControls.TextBox tbSubject;
        
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator2;
        
protected System.Web.UI.WebControls.TextBox tbTo;
        
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1;
        
protected System.Web.UI.WebControls.TextBox tbFrom;
        
protected System.Web.UI.WebControls.Label Label1;
        
protected System.Web.UI.WebControls.Label lblShowMsg;
        
protected System.Web.UI.WebControls.Label Label2;
        
protected System.Web.UI.HtmlControls.HtmlForm Form1;
        
protected System.Web.UI.WebControls.TextBox tbServer;
        
protected System.Web.UI.WebControls.TextBox tbUserName;
        
protected System.Web.UI.WebControls.TextBox tbPass;
        
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator5;
        
protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator6;
        
protected System.Web.UI.WebControls.Button btnSubmit;
        
protected System.Web.UI.HtmlControls.HtmlInputFile FileSelect;
        
protected System.Web.UI.HtmlControls.HtmlForm Form2;
    
        
private void Page_Load(object sender, System.EventArgs e)
        
{
            
// 在此处放置用户代码以初始化页面
        }


        
Web 窗体设计器生成的代码

        
private void btnSubmit_Click(object sender, System.EventArgs e)
        
{
            
//SmtpMail.Send("shaozhd@263.net","shaozhd@263.net","Test","Hello");
            MailMessage m = new MailMessage();
            m.From 
= tbFrom.Text;
            m.To 
= tbTo.Text;
            m.Subject 
= tbSubject.Text;
            m.Body 
= tbBody.Text;
            
//优先级
            switch(ddlp.SelectedIndex)
            
{
                
case 0:
                    m.Priority 
= MailPriority.High;
                    
break;
                
case 1:
                    m.Priority 
= MailPriority.Low;
                    
break;
                
default:
                    m.Priority 
= MailPriority.Normal;
                    
break;
            }

            
//格式
            if(ddlp.SelectedIndex==0)
                m.BodyFormat 
= MailFormat.Text;
            
else
                m.BodyFormat 
= MailFormat.Html;
            
//以下设置服务器
            if(tbServer.Text!="")
            
{
                SmtpMail.SmtpServer 
= tbServer.Text;
                
//以下代码适用于Framework1.1以上版本。
//                m.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate",
//                    "1");    //basic authentication
//                m.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername",
//                    tbUserName.Text); //set your username here
//                m.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword",
//                    tbPass.Text);    //set your password here
            }

            
//以下处理附件 
            string strFileName = FileSelect.PostedFile.FileName;
            
if(strFileName!="")
                m.Attachments.Add(
new MailAttachment(strFileName));
            SmtpMail.Send(m);
        }

    }

}



本文转自高海东博客园博客,原文链接:http://www.cnblogs.com/ghd258/archive/2005/10/22/259692.html,如需转载请自行联系原作者
相关文章
|
2月前
|
Linux API C#
基于 .NET 开发的多功能流媒体管理控制平台
基于 .NET 开发的多功能流媒体管理控制平台
53 9
|
2月前
|
XML C# 数据格式
一个.NET开源、免费、功能强大的 PDF 处理工具
一个.NET开源、免费、功能强大的 PDF 处理工具
|
2月前
|
网络协议 C#
3款.NET开源、功能强大的通讯调试工具,效率提升利器!
3款.NET开源、功能强大的通讯调试工具,效率提升利器!
61 10
|
2月前
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
|
3月前
|
消息中间件 监控 数据可视化
基于.NET开源、功能强大且灵活的工作流引擎框架
基于.NET开源、功能强大且灵活的工作流引擎框架
|
3月前
|
XML 开发框架 .NET
.NET 9 中 LINQ 新增功能实操
.NET 9 中 LINQ 新增功能实操
|
3月前
|
网络协议 Unix Linux
精选2款C#/.NET开源且功能强大的网络通信框架
精选2款C#/.NET开源且功能强大的网络通信框架
109 0
|
3月前
|
开发框架 JavaScript 前端开发
2024年全面且功能强大的.NET快速开发框架推荐,效率提升利器!
2024年全面且功能强大的.NET快速开发框架推荐,效率提升利器!
|
3月前
|
网络协议 网络安全 Apache
一个整合性、功能丰富的.NET网络通信框架
一个整合性、功能丰富的.NET网络通信框架
|
3月前
|
消息中间件 开发框架 .NET
.NET 8 强大功能 IHostedService 与 BackgroundService 实战
【11月更文挑战第7天】本文介绍了 ASP.NET Core 中的 `IHostedService` 和 `BackgroundService` 接口及其用途。`IHostedService` 定义了 `StartAsync` 和 `StopAsync` 方法,用于在应用启动和停止时执行异步操作,适用于资源初始化和清理等任务。`BackgroundService` 是 `IHostedService` 的抽象实现,简化了后台任务的编写,通过 `ExecuteAsync` 方法实现长时间运行的任务逻辑。文章还提供了创建和注册这两个服务的实战步骤,帮助开发者在实际项目中应用这些功能。
120 0

热门文章

最新文章