??
1、編寫一個通用的郵件發送操作類:MailHelper.cs,代碼如下:
~~~
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 SendeEmail(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;
}
//核心代碼結束
}
}
~~~
2、Web頁面中使用及調用示例,代碼如下:
~~~
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="MailSendDemo.aspx.cs" Inherits="demo_MailSendDemo" 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 language="javascript" type="text/javascript">
//獲取附件
function getAttachFile() {
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" />
<br />
<asp:Button ID="btnSend" runat="server" Text="發送" OnClientClick="getAttachFile()" OnClick="btnSend_Click" /><br />
<asp:Label ID="Label1" runat="server" Text=""></asp:Label>
</div>
<asp:HiddenField ID="HiddenField1" runat="server" />
</form>
</body>
</html>
~~~
string a = mails.SendeEmail(TextBox1.Text, "你的郵箱號", "郵箱密碼", TextBox2.Text, TextBox4.Text, TextBox5.Text, filePath, TextBox3.Text);
這里的在你實際使用的時候,替換成你的發送方郵箱賬號和密碼即可。
~~~
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class demo_MailSendDemo : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnSend_Click(object sender, EventArgs e)
{
//實例郵件幫助類,并進行郵件發送
MailHelper mails = new MailHelper();
string filePath = HiddenField1.Value;
string a = mails.SendeEmail(TextBox1.Text, "你的郵箱賬號", "郵箱密碼", TextBox2.Text, TextBox4.Text, TextBox5.Text, filePath, TextBox3.Text);
Label1.Text = a;
}
}
~~~
- 前言
- asp.net利用GridView&quot;表中表&quot;實現主從表數據
- asp.net TreeView動態綁定數據庫顯示數據
- asp.net圖片驗證碼
- asp.net中利用Lucene.net實現檢索并對檢索關鍵字高亮顯示
- asp.net時間控件之用法
- asp.net 水晶報表使用總結
- asp.net frameset里一個frame中獲取下拉框、單選框的值并作為參數傳遞到另一個frame里并顯示結果
- asp.net中zedgraph柱狀圖的使用總結
- asp.net Repeater控件用法----一列數據在Repeater中每行顯示固定記錄方法
- asp.net 服務器端Label控件字間距調整的一種簡單方案
- asp.net 利用HttpWebRequest自動獲取網頁編碼并獲取網頁源代碼
- asp.net中去除字符串中的所有空格字符
- ASP.NET中數據控件中的LinkButton控件點擊時更換顏色
- asp.net中一個頁面跳轉,后一個頁面操作內容后返回先前頁面,并使得先前頁面數據刷新
- asp.net 使用FileUpload控件上傳并顯示圖片
- asp.net中用于顯示包含html標記的服務器端控件 Literal
- asp.net 鼠標移入Repeater某一行時改變顏色并且checkbox列被選中
- asp.net web數據庫控件內table(包括嵌套table)的邊線問題
- asp.net 實現獲取一個集合數組中出現次數最多的元素
- asp.net DataList控件分頁代碼
- asp.net 操作INI配置文件類
- asp.net 操作Excel表數據導入到SQL Server數據庫
- asp.net jquery ajax數據操作 DropDownList級聯
- asp.net 在線用戶列表統計
- asp.net TreeView動態添加
- asp.net 上傳大文件大小控制方案
- ASP.NET中利用Repeater實現增刪改操作
- ASP.NET中DateTime可空值的設置方法
- ASP.NET &lt;a&gt;&lt;/a&gt;標記href傳遞多個參數
- asp.net DropDownList中內容偽樹狀展示
- aspx頁面中點擊按鈕傳遞給Silverlight,并且頁面不刷新
- asp.net 利用微軟數據訪問類庫結合AjaxPro實現無刷新下拉框級聯
- asp.net 服務器控件LinkButton等在后臺代碼中設置js事件或添加css樣式
- asp.net 長表單填寫水平滾動條滑動效果
- asp.net 之StringBuilder 去除重復數據
- asp.net Repeater等數據控件模版內部2個DropDownList控件級聯
- asp.net 網站暫停訪問之添加一個html文件(app_offline.htm)
- asp.net 解決文件上傳大小的限制
- asp.net RadGrid分頁功能擴展Demo
- asp.net frameset 框架頁面伸縮功能實現
- asp.net 圖片批量上傳預覽,在Silverlight頁面中讀取并滾動顯示
- asp.net IE下div背景圖片100%拉伸填充,可以縮放
- asp.net 根據值不同,在綁定時顯示不同顏色
- asp.net+js方式實現的幻燈圖片效果展示
- asp.net 向Oracle數據庫表的Clob字段中寫入文本編輯器中輸入的大段文字信息
- asp.net 網頁中播放mp4文件,IIS中設置MIME類型
- asp.net加載新浪方式的圖片輪播
- asp.net 在使用母版頁的子頁面cs后臺代碼中控制母版頁中的登錄控件顯示
- asp.net 購物網站倒計時功能
- asp.net Oracle數據庫左側目錄樹及右側數據綁定及分頁
- asp.net 內容頁訪問母版頁中的控件
- asp.net 文件上傳和下載管理源碼
- asp.net Repeater控件內容上下滾動播放
- asp.net 郵件發送提醒功能(接收方包括QQ郵箱等)
- asp.net中分頁控件AspNetPager美化樣式
- asp.net 右下角彈出新提醒信息提示框
- asp.net表單驗證和彈出框artDialog使用分享(資源整合)
- asp.net 2個ListBox之間轉移數據的實現
- asp.net使用echarts展示圖表數據
- asp.net中利用jquery zTree異步加載數據
- asp.net中DataTable和List&lt;T&gt;之間相互轉換
- asp.net中利用NPOI導出數據到excel中
- asp.net中Repeater中嵌套Repeater來顯示跟外層Repeater數據相關的其他信息
- asp.net 利用jquery讓登錄頁面垂直居中顯示
- asp.net 利用多表聯合查詢進行匯總統計
- asp.net 中RadioButtonList的選項改變事件處理(采用jquery操作)
- asp.net 中點擊按鈕彈出模式對話框,選擇值后返回到頁面中(window.showModalDialog實現)
- asp.net GridView列數據鼠標移入顯示提示信息
- asp.net table表格表頭及列固定實現
- asp.net 利用IHttpModule和IRequiresSessionState控制入口登錄開發錯誤解決辦法
- asp.net Web項目中使用Log4Net進行錯誤日志記錄
- asp.net web開發中使用的Web彈窗/層的Layer使用介紹
- asp.net 調用echarts顯示圖表控件隨瀏覽器自適應解決方案
- asp.net開發中利用jquery來實現滾動下拉標題浮動固定顯示
- asp.net web開發中使用JS百度地圖信息彈出窗中顯示echarts圖
- asp.net Repeater拖拽實現排序并同步排序字段到數據庫中
- asp.net中獲取Layer彈出層返回值