C#如何实现发送带表格数据的邮件 我的数据在datagridview中取得,然后需要点击发送按钮将数据通过邮件发送,邮件的格式有文本和表格,请问高手如何实现,我现在只知道如何发邮件,但是邮件中的表格如何生成,不清楚。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有个笨办法通过datagridview 可以获取到DataSet, 然后再内存中打开一个Word,操作Word对象,往Word内灌DataSet数据,完成后复制word内的表格,粘贴到邮件内容中, 不知道是否可以取到邮件内容的对象,邮件内容的对象是否支持粘贴? 我的意思也是发送Html格式的邮件将你datagridview中的数据,动态写入一个html的Table中,然后发送动态组合而成的html,用户收到会会显示出一个表格形式的数据。 CS 代码 public void uf_SendMailToAgents(string as_DutyName,string as_DutyMail, string as_BeginDate, string as_EndDate, string as_AgentName,string as_AgentMail) { string ls_Server, ls_SendFrom, ls_Body = ""; ls_Server = ConfigurationSettings.AppSettings["SmtpServer"].Trim(); ls_SendFrom = ConfigurationSettings.AppSettings["MailSender"].Trim(); SmtpMail.SmtpServer = ls_Server; MailMessage lo_Message = new MailMessage(); //MailAttachment lo_Attach = new MailAttachment("C:\\Compal\\SIT Mail Release\\Mail Attachment\\A31\\2011\\2011-5-28 14-33-34\\postback.doc"); //lo_Message.Attachments.Add(lo_Attach); lo_Message.To = as_AgentMail; lo_Message.Cc = as_DutyMail; lo_Message.From = ls_SendFrom; lo_Message.Subject = "SW SITMailRelease System---- 設定代理人提醒"; lo_Message.Priority = MailPriority.High; lo_Message.BodyFormat = MailFormat.Html; lo_Message.BodyEncoding = System.Text.Encoding.UTF8; ls_Body = uf_CreateAgentBody(as_DutyName, as_AgentName, as_BeginDate, as_EndDate); lo_Message.Body = ls_Body; SmtpMail.Send(lo_Message); } public string uf_CreateAgentBody(string as_DutyName, string as_AgentName, string as_BeginDate, string as_EndDate) { XmlDataDocument lo_Document = new XmlDataDocument(); XmlDeclaration lo_Declaration = lo_Document.CreateXmlDeclaration("1.0", "UTF-8", null); XmlElement lo_Root = lo_Document.CreateElement("SITMailRelease"); lo_Document.AppendChild(lo_Root); XmlElement lo_EmpName = lo_Document.CreateElement("Name_Eng"); lo_Document.DocumentElement.AppendChild(lo_EmpName); lo_EmpName.InnerText = as_AgentName; XmlElement lo_Agent = lo_Document.CreateElement("Duty"); lo_Document.DocumentElement.AppendChild(lo_Agent); lo_Agent.InnerText = as_DutyName; XmlElement lo_BeginDate = lo_Document.CreateElement("BeginDate"); lo_Document.DocumentElement.AppendChild(lo_BeginDate); lo_BeginDate.InnerText = as_BeginDate; XmlElement lo_EndDate = lo_Document.CreateElement("EndDate"); lo_Document.DocumentElement.AppendChild(lo_EndDate); lo_EndDate.InnerText = as_EndDate; //XmlElement lo_Link = lo_Document.CreateElement("Link"); //lo_Document.DocumentElement.AppendChild(lo_Link); //lo_Link.InnerText = ConfigurationSettings.AppSettings["href"].ToString(); XmlElement lo_Date = lo_Document.CreateElement("DateNow"); lo_Document.DocumentElement.AppendChild(lo_Date); lo_Date.InnerText = DateTime.Now.ToShortDateString(); lo_Document.InsertBefore(lo_Declaration, lo_Root); string ls_file = this.up_MailToAgent; string ls_Body = this.uf_MailFormat(lo_Document, ls_file); return ls_Body; }注:ls_file为xsl文件的路径xsl代码<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html"/> <xsl:template match="/SITMailRelease"> <html> <head> <title></title> <style type="text/css"> body{ font-family:Arial, Helvetica, sans-serif,"宋体"; background:#e8e8e8; font-size:14px; } td{ font-size:14px; padding:5px; font-family:Arial, Helvetica, sans-serif,"宋体"; } .MailItemKey { font-size:12px; font-weight:bold; } </style> </head> <body> <table id="table1" width="750" cellspacing="0" cellpadding="0" > <tr> <td colspan="2"> Dear <xsl:value-of select="Name_Eng"/>, </td> </tr> <tr> <td colspan="2" height="20"> </td> </tr> <tr> <td height="24" width="30"></td> <td> 您已經被<xsl:value-of select="Duty"/>設置為代理人,時間為<xsl:value-of select="BeginDate"/>---<xsl:value-of select="EndDate"/> </td> </tr> <tr> <td height="44" colspan="2"> Best Regards!</td> </tr> <tr height="25"> <td colspan="2"> <xsl:value-of select="DateNow" /> </td> </tr> </table> </body> </html> </xsl:template></xsl:stylesheet> 这个xsl档,可以画出表格<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"><xsl:output method="html"/><xsl:template match="/SITMailRelease"> <html> <head> <title></title> <style type="text/css"> body { font-family: Arial, Helvetica, sans-serif, "宋体"; font-size: 14px; } td { font-size: 14px; padding: 5px; font-family: Arial, Helvetica, sans-serif, "宋体"; } .MailItemKey { font-size: 14px; font-weight: bold; font-family: Arial, Helvetica, sans-serif, "宋体"; } </style> </head> <body> <table align="center"> <tr> <td> <table d="table1" cellspacing="0" cellpadding="0" width="1000px" style="border: solid 1px #BACF84"> <tr> <td width="50"> </td> <td align="right" style="font-family: Arial, Helvetica, sans-serif; font-size: x-large; font-weight: normal; color: #336600; font-style: italic;"> SW SIT Mail Release System </td> <td width="50"> </td> </tr> <tr> <td> </td> <td>Dear All,</td> <td></td> </tr> <tr> <td colspan="3" height="15"> </td> </tr> <tr> <td ></td> <td> The following images are released. </td> <td></td> </tr> <tr> <td height="15px"></td> <td></td> <td></td> </tr> <tr> <td></td> <td> <table width="100%" cellspacing="0" cellpadding="0" > <tr bgcolor="#F0F7E1"> <td width="250" class="MailItemKey"> Compal Project Code : </td> <td width="700" > <xsl:value-of select="ProjectCode"/> </td> </tr> <tr bgcolor="#FFFFFF"> <td text-align="center" class="MailItemKey"> Compal Project Name : </td> <td text-align="center"> <xsl:value-of select="ProjectName"/> </td> </tr> <tr bgcolor="#F0F7E1"> <td text-align="center" class="MailItemKey"> Customer Code : </td> <td text-align="center"> <xsl:value-of select="CustomerCode"/> </td> </tr> <tr bgcolor="#FFFFFF"> <td text-align="center" class="MailItemKey"> Image Owner : </td> <td text-align="center"> <xsl:value-of select="ImageOwner"/> </td> </tr> <tr bgcolor="#F0F7E1"> <td text-align="center" width="250" class="MailItemKey"> Image Release Date : </td> <td test-align="center" width="700"> <xsl:value-of select="ReleaseDate"/> </td> </tr> <tr bgcolor="#FFFFFF"> <td text-align="center" class="MailItemKey"> Files Server Saved Path : </td> <td text-align="center"> <xsl:value-of select="FTPPath"/> </td> </tr> <tr bgcolor="#F0F7E1"> <td text-align="center" class="MailItemKey"> Files Server UserName : </td> <td text-align="center"> <xsl:value-of select="FTPUser"/> </td> </tr> <tr bgcolor="#FFFFFF"> <td text-align="center" class="MailItemKey"> Files Server UserPwd : </td> <td text-align="center"> <xsl:value-of select="FTPPassword"/> </td> </tr> <tr bgcolor="#F0F7E1"> <td text-align="center" class="MailItemKey"> <font color="red"> Release Note : </font> </td> <td text-align="center" wrap="true"> <font color="red"> <xsl:value-of select="Re" disable-output-escaping="yes"></xsl:value-of> </font> </td> </tr> </table> </td> <td></td> </tr> <tr> <td height="20"></td> <td></td> <td></td> </tr> <tr> <td></td> <td> Image information : </td> <td></td> </tr> <tr> <td> </td> <td> <table id="table10" cellpadding="0" cellspacing="0" style="border: solid 1px #F0F7E1" > <tr > <td class="MailItemKey" bgcolor="#F0F7E1" > Platform </td> <td class="MailItemKey" bgcolor="#F0F7E1"> Language </td> <td class="MailItemKey" bgcolor="#F0F7E1"> Image ID </td> <td class="MailItemKey" bgcolor="#F0F7E1"> OS </td> <td class="MailItemKey" bgcolor="#F0F7E1"> Block </td> <td class="MailItemKey" bgcolor="#F0F7E1"> BIOS Version </td> </tr> <xsl:for-each select="MailContent"> <tr> <td style="border: solid 1px #F0F7E1"> <xsl:value-of select="Platform"/> </td> <td style="border: solid 1px #F0F7E1"> <xsl:value-of select="Language"/> </td> <td style="border: solid 1px #F0F7E1"> <xsl:value-of select="ImageID"/> </td> <td style="border: solid 1px #F0F7E1"> <xsl:value-of select="OS"/> </td> <td style="border: solid 1px #F0F7E1"> <xsl:value-of select="Block"/> </td> <td style="border: solid 1px #F0F7E1"> <xsl:value-of select="BIOSVersion"/> </td> </tr> </xsl:for-each> </table> </td> <td></td> </tr> <tr> <td height="30"></td> <td></td> <td></td> </tr> <tr> <td> </td> <td style="font-style:italic"> Best Regards! </td> <td></td> </tr> <tr> <td> </td> <td style="font-style:italic"> <xsl:value-of select="DateNow" /> </td> <td></td> </tr> <tr> <td height="30"></td> <td></td> <td></td> </tr> </table> </td> </tr> </table> </body> </html> </xsl:template></xsl:stylesheet> web服务异常 .net 文件下载的问题 vs2005启动的问题 怎么在DataSet中读出指定的数据!急! server=local和server=计算机名和server=127.0.0.1的区别 小弟有一事不明 pda上手写笔长期点住一点,会出现一个菜单.请问长期按住一点是什么事件? c# 怎么读excel中的checkbox的文字? jmail 如何发送html格式 的邮件,并把一图片作为背景 我做的网站要有这个特点,怎么搞? C#中一个字符串中构造多个包含go关键字的sql语句的问题 关于 单件模式 与 静态类
{
string ls_Server, ls_SendFrom, ls_Body = "";
ls_Server = ConfigurationSettings.AppSettings["SmtpServer"].Trim();
ls_SendFrom = ConfigurationSettings.AppSettings["MailSender"].Trim();
SmtpMail.SmtpServer = ls_Server;
MailMessage lo_Message = new MailMessage();
//MailAttachment lo_Attach = new MailAttachment("C:\\Compal\\SIT Mail Release\\Mail Attachment\\A31\\2011\\2011-5-28 14-33-34\\postback.doc");
//lo_Message.Attachments.Add(lo_Attach);
lo_Message.To = as_AgentMail;
lo_Message.Cc = as_DutyMail;
lo_Message.From = ls_SendFrom;
lo_Message.Subject = "SW SITMailRelease System---- 設定代理人提醒";
lo_Message.Priority = MailPriority.High;
lo_Message.BodyFormat = MailFormat.Html;
lo_Message.BodyEncoding = System.Text.Encoding.UTF8;
ls_Body = uf_CreateAgentBody(as_DutyName, as_AgentName, as_BeginDate, as_EndDate);
lo_Message.Body = ls_Body;
SmtpMail.Send(lo_Message);
} public string uf_CreateAgentBody(string as_DutyName, string as_AgentName, string as_BeginDate, string as_EndDate)
{
XmlDataDocument lo_Document = new XmlDataDocument();
XmlDeclaration lo_Declaration = lo_Document.CreateXmlDeclaration("1.0", "UTF-8", null);
XmlElement lo_Root = lo_Document.CreateElement("SITMailRelease");
lo_Document.AppendChild(lo_Root); XmlElement lo_EmpName = lo_Document.CreateElement("Name_Eng");
lo_Document.DocumentElement.AppendChild(lo_EmpName);
lo_EmpName.InnerText = as_AgentName; XmlElement lo_Agent = lo_Document.CreateElement("Duty");
lo_Document.DocumentElement.AppendChild(lo_Agent);
lo_Agent.InnerText = as_DutyName; XmlElement lo_BeginDate = lo_Document.CreateElement("BeginDate");
lo_Document.DocumentElement.AppendChild(lo_BeginDate);
lo_BeginDate.InnerText = as_BeginDate;
XmlElement lo_EndDate = lo_Document.CreateElement("EndDate");
lo_Document.DocumentElement.AppendChild(lo_EndDate);
lo_EndDate.InnerText = as_EndDate; //XmlElement lo_Link = lo_Document.CreateElement("Link");
//lo_Document.DocumentElement.AppendChild(lo_Link);
//lo_Link.InnerText = ConfigurationSettings.AppSettings["href"].ToString(); XmlElement lo_Date = lo_Document.CreateElement("DateNow");
lo_Document.DocumentElement.AppendChild(lo_Date);
lo_Date.InnerText = DateTime.Now.ToShortDateString(); lo_Document.InsertBefore(lo_Declaration, lo_Root);
string ls_file = this.up_MailToAgent;
string ls_Body = this.uf_MailFormat(lo_Document, ls_file);
return ls_Body;
}注:ls_file为xsl文件的路径xsl代码<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html"/>
<xsl:template match="/SITMailRelease">
<html>
<head>
<title></title>
<style type="text/css">
body{
font-family:Arial, Helvetica, sans-serif,"宋体";
background:#e8e8e8;
font-size:14px;
}
td{
font-size:14px;
padding:5px; font-family:Arial, Helvetica, sans-serif,"宋体";
} .MailItemKey
{
font-size:12px;
font-weight:bold;
}
</style>
</head>
<body>
<table id="table1" width="750" cellspacing="0" cellpadding="0" >
<tr>
<td colspan="2">
Dear <xsl:value-of select="Name_Eng"/>,
</td>
</tr>
<tr>
<td colspan="2" height="20"> </td>
</tr>
<tr>
<td height="24" width="30"></td>
<td>
您已經被<xsl:value-of select="Duty"/>設置為代理人,時間為<xsl:value-of select="BeginDate"/>---<xsl:value-of select="EndDate"/> </td>
</tr>
<tr>
<td height="44" colspan="2"> Best Regards!</td>
</tr> <tr height="25">
<td colspan="2">
<xsl:value-of select="DateNow" />
</td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html"/>
<xsl:template match="/SITMailRelease">
<html>
<head>
<title></title>
<style type="text/css">
body
{
font-family: Arial, Helvetica, sans-serif, "宋体";
font-size: 14px;
} td
{
font-size: 14px;
padding: 5px;
font-family: Arial, Helvetica, sans-serif, "宋体";
} .MailItemKey
{
font-size: 14px;
font-weight: bold;
font-family: Arial, Helvetica, sans-serif, "宋体";
}
</style>
</head>
<body>
<table align="center">
<tr>
<td> <table d="table1" cellspacing="0" cellpadding="0" width="1000px" style="border: solid 1px #BACF84">
<tr>
<td width="50"> </td>
<td align="right" style="font-family: Arial, Helvetica, sans-serif; font-size: x-large; font-weight: normal; color: #336600; font-style: italic;">
SW SIT Mail Release System
</td>
<td width="50">
</td>
</tr>
<tr>
<td>
</td>
<td>Dear All,</td>
<td></td>
</tr>
<tr>
<td colspan="3" height="15">
</td>
</tr>
<tr>
<td ></td>
<td>
The following images are released.
</td>
<td></td>
</tr>
<tr>
<td height="15px"></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td> <table width="100%" cellspacing="0" cellpadding="0" >
<tr bgcolor="#F0F7E1">
<td width="250" class="MailItemKey">
Compal Project Code : </td> <td width="700" >
<xsl:value-of select="ProjectCode"/> </td>
</tr> <tr bgcolor="#FFFFFF">
<td text-align="center" class="MailItemKey">
Compal Project Name : </td> <td text-align="center"> <xsl:value-of select="ProjectName"/>
</td>
</tr>
<tr bgcolor="#F0F7E1"> <td text-align="center" class="MailItemKey">
Customer Code : </td> <td text-align="center">
<xsl:value-of select="CustomerCode"/> </td>
</tr>
<tr bgcolor="#FFFFFF">
<td text-align="center" class="MailItemKey">
Image Owner : </td> <td text-align="center"> <xsl:value-of select="ImageOwner"/>
</td>
</tr> <tr bgcolor="#F0F7E1"> <td text-align="center" width="250" class="MailItemKey">
Image Release Date :
</td> <td test-align="center" width="700">
<xsl:value-of select="ReleaseDate"/>
</td>
</tr> <tr bgcolor="#FFFFFF"> <td text-align="center" class="MailItemKey">
Files Server Saved Path :
</td> <td text-align="center">
<xsl:value-of select="FTPPath"/>
</td>
</tr>
<tr bgcolor="#F0F7E1"> <td text-align="center" class="MailItemKey">
Files Server UserName :
</td> <td text-align="center">
<xsl:value-of select="FTPUser"/> </td>
</tr>
<tr bgcolor="#FFFFFF"> <td text-align="center" class="MailItemKey">
Files Server UserPwd : </td> <td text-align="center"> <xsl:value-of select="FTPPassword"/>
</td>
</tr> <tr bgcolor="#F0F7E1"> <td text-align="center" class="MailItemKey">
<font color="red">
Release Note :
</font>
</td> <td text-align="center" wrap="true">
<font color="red">
<xsl:value-of select="Re" disable-output-escaping="yes"></xsl:value-of>
</font> </td>
</tr>
</table>
</td>
<td></td>
</tr>
<tr>
<td height="20"></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td> Image information :
</td>
<td></td>
</tr>
<tr>
<td> </td>
<td>
<table id="table10" cellpadding="0" cellspacing="0" style="border: solid 1px #F0F7E1" > <tr > <td class="MailItemKey" bgcolor="#F0F7E1" >
Platform
</td>
<td class="MailItemKey" bgcolor="#F0F7E1">
Language
</td>
<td class="MailItemKey" bgcolor="#F0F7E1">
Image ID
</td>
<td class="MailItemKey" bgcolor="#F0F7E1">
OS
</td>
<td class="MailItemKey" bgcolor="#F0F7E1">
Block
</td>
<td class="MailItemKey" bgcolor="#F0F7E1">
BIOS Version
</td> </tr>
<xsl:for-each select="MailContent">
<tr>
<td style="border: solid 1px #F0F7E1">
<xsl:value-of select="Platform"/>
</td>
<td style="border: solid 1px #F0F7E1">
<xsl:value-of select="Language"/>
</td>
<td style="border: solid 1px #F0F7E1">
<xsl:value-of select="ImageID"/>
</td>
<td style="border: solid 1px #F0F7E1">
<xsl:value-of select="OS"/>
</td>
<td style="border: solid 1px #F0F7E1">
<xsl:value-of select="Block"/>
</td>
<td style="border: solid 1px #F0F7E1">
<xsl:value-of select="BIOSVersion"/>
</td> </tr>
</xsl:for-each>
</table>
</td>
<td></td>
</tr>
<tr>
<td height="30"></td>
<td></td>
<td></td>
</tr>
<tr>
<td> </td>
<td style="font-style:italic">
Best Regards!
</td>
<td></td>
</tr>
<tr>
<td> </td>
<td style="font-style:italic">
<xsl:value-of select="DateNow" />
</td>
<td></td>
</tr>
<tr>
<td height="30"></td>
<td></td>
<td></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>