社区
C#
帖子详情
C#如何实现发送带表格数据的邮件
sxdtyzg
2011-06-27 10:22:58
我的数据在datagridview中取得,然后需要点击发送按钮将数据通过邮件发送,邮件的格式有文本和表格,请问高手如何实现,我现在只知道如何发邮件,但是邮件中的表格如何生成,不清楚。
...全文
1706
8
打赏
收藏
C#如何实现发送带表格数据的邮件
我的数据在datagridview中取得,然后需要点击发送按钮将数据通过邮件发送,邮件的格式有文本和表格,请问高手如何实现,我现在只知道如何发邮件,但是邮件中的表格如何生成,不清楚。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sxdtyzg
2011-06-27
打赏
举报
回复
能否提供一个实例给我看看,我刚接触C#开发,太理论的东西,不好理解,谢谢各位大大了。
isjoe
2011-06-27
打赏
举报
回复
我的意思也是发送Html格式的邮件
将你datagridview中的数据,动态写入一个html的Table中,然后发送动态组合而成的html,用户收到会会显示出一个表格形式的数据。
sxdtyzg
2011-06-27
打赏
举报
回复
楼上的大哥能否详细说明一下?
rqx110
2011-06-27
打赏
举报
回复
发送html格式的!
sxdtyzg
2011-06-27
打赏
举报
回复
谢谢楼上提供的思路,我尝试一下。不知道有没有办法,能直接在邮件中生成表格的方法。
invorx
2011-06-27
打赏
举报
回复
有个笨办法
通过datagridview 可以获取到DataSet, 然后再内存中打开一个Word,操作Word对象,往Word内灌DataSet数据,完成后复制word内的表格,粘贴到邮件内容中, 不知道是否可以取到邮件内容的对象,邮件内容的对象是否支持粘贴?
jackysun0000
2011-06-27
打赏
举报
回复
这个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="Remark" 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>
jackysun0000
2011-06-27
打赏
举报
回复
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>
博主推荐
C#
Winform定时
发送
邮箱(附源码)
【博主推荐】
C#
Winform定时
发送
邮箱(附源码),1.支持对oracle
数据
定时查询,然后把查询结果
发送
邮箱;2.灵活可配置,日志目录,
数据
库相关连接,展示的字段,展示的格式,
发送
的邮箱,
表格
的风格等; 3.可以在此...
Visual+
C#
+2008程序设计经典案例设计与
实现
.rar
案例6 动态
发送
电子
邮件
案例7 动态读取XMI文件 本章小结 第11章 Visual
C#
2008与Web应用程序 案例1 利用AdRotator控件随机显示广告图像 案例2 利用Calendar控件动态查询系统日期 案例3 会员登录系统 案例4 利用...
用
C#
实现
封装
本课程主要讲解了
C#
中属性的封装,方法的应用,构造函数的重载,以及值传递和引用传递的区别。在学习本课程之前需要掌握一定的基础知识。
C#
设计经典案例设计与
实现
案例6 动态
发送
电子
邮件
案例7 动态读取XMI文件 本章小结 第11章 Visual
C#
2008与Web应用程序 案例1 利用AdRotator控件随机显示广告图像 案例2 利用Calendar控件动态查询系统日期 案例3 会员登录系统 案例4 利用...
Visual
C#
2008程序设计经典案例设计与
实现
案例6 动态
发送
电子
邮件
案例7 动态读取XML件 本章小结 第11章 Visual C#2008与Web应用程序 案例1 利用AdRotator控件随机显示广告图像 案例2 利用Calendar控件动态查询系统日期 案例3 会员登录系统 案例4 ...
C#
110,556
社区成员
642,563
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章