摘要:ASP.NET 如何在郵件內容嵌入GridView控制項資料
今天,藍色小舖的一個朋友在MSN上問了我一個問題,就是如何把GridView的資料放在電子郵件內容中,由於我也沒這樣做過,經研究一番總算是把這個問題解決了,其中比較要注意的是,由於這個方法會發生一個錯誤
- 例外詳細資訊: System.Web.HttpException: 型別 'GridView' 的控制項 'GridView1' 必須置於有 runat=server 的表單標記之中。
所以必須在程式碼中覆寫VerifyRenderingInServerForm這個方法。
問題內容:
Blueshop - Peter~ 說:
hi 您好 不知您現在是否有空 有ㄧ個關於VBNET的EMAIL問題想請教您
Keep Walking 力挺你的夢想 說:
好ㄚ
Keep Walking 力挺你的夢想 說:
EMAIL 怎麼了嗎
Blueshop - Peter~ 說:
小弟目前在發送mail的同時還需要將頁面上的gridview畫面及ㄧ些label的值
加在mail裡面ㄧ同發送出去
想請教各位大大這樣要如何來實做呢?
小弟的想法是將gridview及label包含在某個"標記"裡面
只要取得"標記"的值就可以???
解決方案:
using System.IO; using System.Text; using System.Net.Mail; //...... private string GridViewToHtml(GridView gv) { StringBuilder sb = new StringBuilder(); StringWriter sw = new StringWriter(sb); HtmlTextWriter hw = new HtmlTextWriter(sw); gv.RenderControl(hw); return sb.ToString(); } protected void Button1_Click(object sender, EventArgs e) { MailMessage mail = new MailMessage(); mail.Body = GridViewToHtml(GridView1); mail.IsBodyHtml = true; //...... }
public override void VerifyRenderingInServerForm(Control control) { }
運行結果