定义的模版内容:

  1. {{first.DATA}}
  2. 商品名称:{{product.DATA}}
  3. 商品价格:{{price.DATA}}
  4. 购买时间:{{time.DATA}}
  5. {{remark.DATA}}

代码:

  1. protected void Page_Load(object sender, EventArgs e)
  2. {
  3. //根据appId判断获取
  4. if (!AccessTokenContainer.CheckRegistered(appId))    //检查是否已经注册
  5. {
  6. AccessTokenContainer.Register(appId, appSecret);    //如果没有注册则进行注册
  7. }
  8. string access_token = AccessTokenContainer.GetAccessTokenResult(appId).access_token; //AccessToken
  9. string openId = "xxxxxx";   //用户openId
  10. string templateId = "xxxxxx";   //模版id
  11. string linkUrl = "http://www.baidu.com";    //点击详情后跳转后的链接地址,为空则不跳转
  12. //为模版中的各属性赋值
  13. var templateData = new ProductTemplateData()
  14. {
  15. first = new TemplateDataItem("您好,您的订单已支付成功!", "#000000"),
  16. product = new TemplateDataItem("旺旺大礼包", "#000000"),
  17. price = new TemplateDataItem("99.8元", "#000000"),
  18. time = new TemplateDataItem("2016-11-09 16:50:38", "#000000"),
  19. remark = new TemplateDataItem("感谢您的光临~", "#000000")
  20. };
  21. SendTemplateMessageResult sendResult = TemplateApi.SendTemplateMessage(access_token, openId, templateId, "", linkUrl, templateData);
  22. //发送成功
  23. if (sendResult.errcode.ToString() == "请求成功")
  24. {
  25. //...
  26. }
  27. else
  28. {
  29. Response.Write("出现错误:" + sendResult.errmsg);
  30. }
  31. }
  32. /// <summary>
  33. /// 定义模版中的字段属性(需与微信模版中的一致)
  34. /// </summary>
  35. public class ProductTemplateData
  36. {
  37. public TemplateDataItem first { get; set; }
  38. public TemplateDataItem product { get; set; }
  39. public TemplateDataItem price { get; set; }
  40. public TemplateDataItem time { get; set; }
  41. public TemplateDataItem remark { get; set; }
  42. }

推送效果图:

【模版消息】C#推送微信模版消息(Senparc.Weixin.MP.dll)的更多相关文章

  1. 微信公众平台C# SDK:Senparc.Weixin.MP.dll

    https://github.com/Senparc/WeiXinMPSDK [转] http://www.cnblogs.com/szw/archive/2013/01/13/senparc-wei ...

  2. 【转】微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引

    微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引 Senparc.Weixin.MP SDK从一开始就坚持开源的状态,这个过程中得到了许多朋友的认可和支持. 目前SDK已经达到 ...

  3. 微信公众账号 Senparc.Weixin.MP SDK 开发教程

    http://www.cnblogs.com/szw/archive/2013/05/14/weixin-course-index.html 微信公众账号 Senparc.Weixin.MP SDK ...

  4. 微信支付开发-Senparc.Weixin.MP详解

    年底了,反而工作更忙了,我从15年11月开始写<1024伐木累>系列小说和爆笑对白,得到了很多身边的技术好友的支持,现在爆笑对白已经有越来越多的朋友一起帮着写段子,整理,包括小说内容的编辑 ...

  5. 微信公众账号 Senparc.Weixin.MP SDK 开发教程 索引

    Senparc.Weixin.MP SDK从一开始就坚持开源的状态,这个过程中得到了许多朋友的认可和支持. 目前SDK已经达到比较稳定的版本,这个过程中我觉得有必要整理一些思路和经验,和大家一起分享. ...

  6. Senparc.Weixin.MP SDK 微信公众平台开发教程(二):成为开发者

    Senparc.Weixin.MP SDK 微信公众平台开发教程(二):成为开发者 这一篇主要讲作为一名使用公众平台接口的开发者,你需要知道的一些东西.其中也涉及到一些微信官方的规定或比较掩蔽的注意点 ...

  7. Senparc.Weixin.MP SDK 微信公众平台开发教程(三):微信公众平台开发验证

    要对接微信公众平台的"开发模式",即对接到自己的网站程序,必须在注册成功之后(见Senparc.Weixin.MP SDK 微信公众平台开发教程(一):微信公众平台注册),等待官方 ...

  8. Senparc.Weixin.MP SDK 微信公众平台开发教程(五):使用Senparc.Weixin.MP SDK

    Senparc.Weixin.MP SDK已经涵盖了微信6.x的所有公共API. 整个项目的源代码以及已经编译好的程序集可以在这个项目中获取到:https://github.com/JeffreySu ...

  9. 转载收藏之用 - 微信公众平台开发教程(五):使用Senparc.Weixin.MP SDK

    Senparc.Weixin.MP SDK已经涵盖了微信5.0的所有公共API,以及2013年10月29日升级之后大部分实用的接口. 整个项目的源代码以及已经编译好的程序集可以在这个项目中获取到:ht ...

随机推荐

  1. 使用git整体流程

    一.git提交代码走meger请求的整体流程 工作中使用git推代码时,如果走merge请求,那么也就是说拉代码时拉公共代码库的代码,但是提交时需要先提交到自己的代码库,然后在gitlab上提交mer ...

  2. lintcode:恢复IP地址

    恢复IP地址 给一个由数字组成的字符串.求出其可能恢复为的所有IP地址. 样例 给出字符串 "25525511135",所有可能的IP地址为: [ "255.255.11 ...

  3. Linux command: usermod -- 改变用户状态

    应用举例: 1. usermod -g newuser newuser force use GROUP as new primary group. 一般时候是默认的,也是必须的(不能更改).2. 指定 ...

  4. python urllib2的proxyhandler

    1. 再a方法中新建了个opener,使用了代理: proxydict = {} proxydict['http'] = "http://%s:%s"%(ip,port) #pri ...

  5. 谈谈MVC模式

    谈谈MVC模式   作者: 阮一峰 1. 如何设计一个程序的结构,这是一门专门的学问,叫做"架构模式"(architectural pattern),属于编程的方法论. MVC模式 ...

  6. 关于python中模块的import路径

    前两天被一个同事问了一个python的问题: 为什么一个目录里的python文件引用不要另一个兄弟目录的python文件,但是这两个目录的父母录运行时是可以引用到了.当时感觉一直是模块和包的机制问题, ...

  7. 314. Binary Tree Vertical Order Traversal

    题目: Given a binary tree, return the vertical order traversal of its nodes' values. (ie, from top to ...

  8. Java:字符串类String的功能介绍

    在java中,字符串是一个比较常用的类,因为代码中基本上处理的很多数据都是字符串类型的,因此,掌握字符串类的具体用法显得很重要了. 它的主要功能有如下几种:获取.判断.转换.替换.切割.字串的获取.大 ...

  9. intelliJ IDEA中项目以jar包的形式导出

    在上一篇中把intelliJ IDEA安装并配置完事后,我们就可以写scala程序了.编写完scala程序后我们要把程序导出,上传到服务器上,在spark集群下运行,下面就讲一下包的导出过程以及包在服 ...

  10. oracle11g卸载出错 无法删除文件,文件正在使用中

    在卸载oracle11g时 停止服务后,运行C:\myoracle\think\product\11.2.0\dbhome_2\deinstall 中的 deinstall.bat 可以在cmd中直接 ...