這篇文章主要介紹了asp.net發送郵件樣本分享,需要的朋友可以參考下
mailhelper -------mail協助類
代碼如下:
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.Mail;/// <summary>///mailhelper 的摘要說明/// </summary>public class mailhelper{ public mailhelper() { // //TODO: 在此處添加建構函式邏輯 // } /// <summary> /// 郵件發送操作 /// </summary> /// <param name="Addressee">收件者地址</param> /// <param name="From">寄件者地址</param> /// <param name="sendpassword">寄件者密碼</param> /// <param name="Copy">抄送人地址</param> /// <param name="secret">密送人地址</param> /// <param name="Subject">發送主題</param> /// <param name="Attachment">附件資訊</param> /// <param name="Body">郵件內容</param> public string SendeEmal(string Addressee, string From, string sendpassword, string Copy, string secret, string Subject, string Attachment, string Body) { MailMessage objMailMessage; MailAttachment objMailAttachment; // 建立郵件訊息 objMailMessage = new MailMessage(); //寄件者EMAIL objMailMessage.From = From;//源郵件地址 //收件者EMAIL objMailMessage.To = Addressee; //目的郵件地址 //郵件抄送 objMailMessage.Cc = Copy; //郵件misong objMailMessage.Bcc = secret; //郵件主題 objMailMessage.Subject = Subject; //發送郵件的標題 //郵件內容 objMailMessage.Body = Body;//發送郵件的內容 // 建立一個附件對象 if (Attachment != "") { objMailAttachment = new MailAttachment(Attachment);//發送郵件的附件 c:\\test.txt objMailMessage.Attachments.Add(objMailAttachment);//將附件附加到郵件訊息對象中 } //接著利用SMTP來發送郵件,需要使用Microsoft .NET Framework SDK v1.1和它以上的版本 //基本許可權 objMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1"); //使用者名稱 string name = From.Substring(0, From.IndexOf('@')); objMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", name); //密碼 objMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", sendpassword); //如果沒有上述三行代碼,則出現如下錯誤提示:伺服器拒絕了一個或多個收件者地址。伺服器響應為: 554 : Client host rejected: Access denied //SMTP地址 string smtp = "smtp." + From.Substring(From.IndexOf('@') + 1); SmtpMail.SmtpServer = "smtp." + From.Substring(From.IndexOf('@') + 1); //開始發送郵件 try { SmtpMail.Send(objMailMessage); return "郵件發送成功!"; } catch (System.Net.Mail.SmtpException ex) { return ex.Message; } //核心代碼結束 }}
然後下來是自己做的一個demo--
前台
代碼如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="mail.aspx.cs" Inherits="information_mail" ValidateRequest="false" %><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title></title> <script src="../Style/jquery/jquery.js" type="text/javascript"></script> <script src="../Style/jquery/jquery.validate.js" type="text/javascript"></script> <script language="javascript" type="text/javascript"> function gei() { var file_value = document.getElementById("File1").value; document.getElementById("HiddenField1").value = file_value; } </script></head><body> <form id="form1" runat="server"> <div> 發給:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br /> 抄送:<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br /> 密送:<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox><br /> 主題:<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox><br /> 內容:<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox><br /> 附件:<input id="File1" type="file" /> <%--<asp:TextBox ID="TextBox6" runat="server"></asp:TextBox>--%> <br /> <asp:Button ID="Button1" runat="server" Text="發送" OnClientClick="gei()" OnClick="Button1_Click" /><br /> <asp:Label ID="Label1" runat="server" Text=""></asp:Label> </div> <asp:HiddenField ID="HiddenField1" runat="server" /> </form></body></html>
後台:
代碼如下:
protected void Button1_Click(object sender, EventArgs e) { //執行個體郵件協助類 mailhelper mails = new mailhelper(); string filePath = HiddenField1.Value; string a = mails.SendeEmal(TextBox1.Text, "郵件帳號", "郵件密碼", TextBox2.Text, TextBox4.Text, TextBox5.Text, filePath, TextBox3.Text); Label1.Text = a;}