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

前台代码: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);
        }

    }

}
posted @ 2006-11-11 18:18  '.Elvis.'  阅读(364)  评论(0编辑  收藏  举报