DataSet ds = new DataSet();
ds.ReadXml(AppDomain.CurrentDomain.BaseDirectory + "XML\\Mail.xml");

if (ds.Tables.Count > 0)
{
DataTable dt = ds.Tables[0];
if (dt.Rows.Count > 0)
{
body = dt.Rows[0]["content"].ToString();
}
}
body = body.Replace("$Name$", custName).Replace("$DateTime$", DateTime.Now.ToString("yyyy年MM月dd日")).ToString();

attachment.Name = “附件名字”;
string subject = "邮件主题";

string to= "邮件接收人";

Send(to, subject, body, attachment);  //邮件发送

// 一下是Send 方法

public static bool Send(string to, string subject, string body, Attachment attachment)
{
to = to.Replace(";", ";");
string from = "163邮箱";
string userName = "163登录名";
string pwd = "163密码";
string host = "smtp.163.com";  //163邮箱 host
int port = 25;
MailAddress mailSender = new MailAddress(from);
string[] tos = to.Split(';');
MailMessage mailMsg = new MailMessage(from, tos[0], subject, body);
if (tos.Length > 0)
{
for(int i = 1; i<tos.Length;i++)
{
mailMsg.CC.Add(tos[i]);
}
}
mailMsg.IsBodyHtml = true;
mailMsg.Sender = mailSender;

mailMsg.SubjectEncoding = Encoding.UTF8;
mailMsg.BodyEncoding = Encoding.UTF8;
mailMsg.HeadersEncoding = Encoding.UTF8;
if (attachment != null)
{
mailMsg.Attachments.Add(attachment);
}
new Macrowing.Common.SystemEx.SysException("2");
SmtpClient client = new SmtpClient(host, port);
client.Credentials = new NetworkCredential(userName, pwd);

try
{
client.Send(mailMsg);
new Macrowing.Common.SystemEx.SysException("3");
return true;
}
catch (Exception e)
{
new Macrowing.Common.SystemEx.SysException("4");
Log.WriteEmailSendExcptionLog(e.Message);
}
new Macrowing.Common.SystemEx.SysException("5");
return false;
}

/// XML 中的mail.xml 配置  、 可复制整个html 网页但是要写在 <![CDATA[  内容  ]]>  之间,如下例子:

<?xml version="1.0" encoding="utf-8" ?>

<MailTemplate>
<mail>
<!-- 请勿修改 -->
<name>Delay</name>
<!-- 可配置 -->
<title></title>
<!-- 可配置 -->
<content>

<![CDATA[

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
<style>
body,table,td,div,p,form{
padding:0px;
border-width:0px;
font-family: "Tahoma","Arial", "Verdana", "Helvetica", "sans-serif";
color:#414141;
font-size:14px;
}
.colorFFF{
color:#FFF;
}
.colorff6602{
color:#ff6602;
}
</style>
</head>

<body>
<div class="mailForm">
<div class="mailTitle colorFFF fontbold">标题</div>
<p>尊敬的 <span class="fontbold fontsize16">$Name$</span>,您好!</p>
<p>内容</p>
<p>内容</p>

<p>。。。。。。</p>
<p>==================================</p>

<p>==================================</p>
<br />
<p class="lineheight">Best Regards<br />
XXX团队<br />
$DateTime$
</p>
</div>
</body>
</html>
]]>

</content>
<!-- 可配置 -->
<to>$Manager$,$Actor$</to>
<!-- 可配置 -->
<cc>$Admin$</cc>
</mail>
</MailTemplate>

读取XML 发送网页版邮件的更多相关文章

  1. 使用JavaMail发送邮件-从FTP读取图片并添加到邮件正文发送

    业务分析: 最近工作需要,需要从FTP读取图片内容,添加到邮件正文发送.发送邮件正文,添加附件采用Spring的MimeMessageHelper对象来完成,添加图片也将采用MimeMessageHe ...

  2. 用requests登录微信网页版,并接收发送消息

    首先,网页版微信登录大致分为以下几个流程(都是大家可以通过抓包得到): 1.登陆主页后,会生成一个UUID,这是个用户标识,在后面请求二维码会用到 def get_uuid(self): '''获取u ...

  3. spider-web 是爬虫的网页版,使用xml配置

    spider-web 是爬虫的网页版,使用xml配置,支持大部分页面的爬取,支持爬取内容的保存.下载等. 其中配置文件格式为: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 ...

  4. xml数据发送请求,读取xml

    # coding:utf-8 import requests url = "http://httpbin.org/post" # python3字符串换行,在右边加个反斜杠 bod ...

  5. wechat 网页版通信全过程

    想要记录总结一下自己在这个小项目中所遇到的坑,以及解决问题的思路. 首先我觉得这个小项目挺有实际市场的,市场上有一定的需求量,这个就是驱动力吧.这个小项目的关键点是wechat网页版通信全过程,讲真挺 ...

  6. JavaScript之简易http接口测试工具网页版

    简易http接口测试工具网页版,支持get.post请求,支持json格式消息体,form表单暂不支持. httpClient.html <!DOCTYPE html> <html ...

  7. Ajax读取XML和JSON数据

    Ajax从服务器获取的数据都是字符串,但是通过不同的解析,可以解析为XML或者JSON. 一般来说.使用XML格式的数据比较通用,但是服务器和客户端解析起来都比较复杂一些;而使用JSON语句话,服务端 ...

  8. ASP.NET MVC 学习笔记-2.Razor语法 ASP.NET MVC 学习笔记-1.ASP.NET MVC 基础 反射的具体应用 策略模式的具体应用 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用 C#读取XML文件的基类实现

    ASP.NET MVC 学习笔记-2.Razor语法   1.         表达式 表达式必须跟在“@”符号之后, 2.         代码块 代码块必须位于“@{}”中,并且每行代码必须以“: ...

  9. 命令行发送SMTP协议邮件(163邮箱)

    这里我们用163邮箱为例子,借助命令行发送smtp邮件 1.连接服务器 在终端上输入:telnet smtp.163.com 25 回车,然后就连接了服务器的25端口,成功会输出 220 163.co ...

随机推荐

  1. 小小收获for python

    包导入问题: 包之外导入:还是按照sys.path的搜索路径进行模块的导入 包内的导入:python3.0+     完全区分绝对导入和相对导入 from . import string     #在 ...

  2. php 中常见的函数及系统常量

    1.判断是否存在某函数: function_exists('memory_get_usage'): 2.统计程序执行到某节点消耗的系统内存: memory_get_usage(); 3.当前访问目录的 ...

  3. python字符串及其方法详解

    首先来一段字符串的基本操作 str1="my little pony" str2="friendship is magic" str3=str1+", ...

  4. WINDOWS 远程桌面不能直接拷贝文件问题

    使用WIN7远程客户端连WIN 2003服务器,发现不能拷贝文件,使用下面方法解决:

  5. Linux常用命令1

    jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有Java进程pid的命令. jps [ options ] [ host ...

  6. sass揭秘之@mixin,%,@function

    因为文章内含有很多sass代码,如需自己动手查看编译结果,推荐使用sassmeister这款在线编译工具,方便你阅读学习. 在阅读本文章之前,请先确认你已经阅读了上篇文章sass揭秘之变量,不然会给你 ...

  7. Hibernate和Struts2整合的增、删、改、查

    1. 新建一个Web项目,准备好jar包和配置文件. 2. web.xml文件中添加过滤器 <?xml version="1.0" encoding="UTF-8& ...

  8. Jquery--JS的函数包

    Jquery-----JS的函数包,直接来调用方法. 一.基本知识 用法:把jquery-1.7.2.js直接复制到要做的网站项目中,拖拽引用和JS用法一样. 二.选择器 [1]基本: 1.取ID:v ...

  9. js判断input输入框长度(支持中英文输入)

    function CheckTxtLength(txt) { var num = txt.replace(/[^\x00-\xff]/g, 'xx').length; if (num <=11) ...

  10. HTML5 CANVAS画图 beginPath和closePath

    beginPath这个canvas函数我很早就讲过了,他的作用很简单,就是开始一段新路径,我们先来看下面的一小段代码: var ctx = document.getElementById('cvs') ...