引入下面两个名称空间
using System.Net.Mail;
using System.Net;
前台页面代码
<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
<title></title>
</head>
<body>
<formid="form1"runat="server">
<div>
发送人:<asp:TextBoxID="txtFrom"runat="server"></asp:TextBox>
<br/>
收件人:<asp:TextBoxID="txtTo"runat="server"></asp:TextBox>
<br/>
主题:<asp:TextBoxID="txtTheme"runat="server"></asp:TextBox>
<br/>
附件:<asp:FileUploadID="fpAttachment"
runat="server"/>
<br/>
内容:<asp:TextBoxID="txtContent"runat="server"Rows="20"TextMode="MultiLine"
Width="300px"></asp:TextBox>
<br/>
<asp:ButtonID="Button1"runat="server"Text="发送"οnclick="Button1_Click"/>
</div>
</form>
</body>
</html>
================================================================================ 后台C#代码:
protected void Button1_Click(objectsender, EventArgs e)
{
//测试通过,能发送带有附件的邮件
stringfrom = txtFrom.Text.Trim(); //发件人
stringto = txtTo.Text.Trim();//收件人
stringtheme = txtTheme.Text.Trim();//主题
//string file = fpAttachment.FileName;//附件文件名
stringfile =fpAttachment.PostedFile.FileName;//附件文件路径(包含文件名)
stringcontent = txtContent.Text; //邮件内容
MailMessage messge = newMailMessage(from,to); //邮件消息实例
messge.Body = content;
messge.Subject = theme;
messge.IsBodyHtml = true;
messge.Priority = MailPriority.High;//邮件优先级别
messge.Attachments.Add(newAttachment(file));
SmtpClient client = newSmtpClient(); //Smtp协议
client.Host = "smtp.163.com"; //发送人的Smtp主机名称或IP地址,实例为163邮箱的Smtp地址
client.Credentials = newNetworkCredential("cpeng0907@163.com", "发送邮箱的密码");//验证发件人的身份凭据
client.Send(messge);
messge.Attachments.Dispose();
}