嗯,别的不说了现在开始接着上次http://www.cnblogs.com/QLJ1314/p/3838058.html  获取ACCESSTOKEN,开始吧,接下来我们就写发送文本消息吧。

   首先建立一个微信消息实体类。此原文出处:blog.csdn.net/hemeng1980/article/details/19503171

1 class wxmessage
2 {
3 public string FromUserName { get; set; } 消息发送方微信号
4 public string ToUserName { get; set; } 消息接收方微信号,一般为公众平台账号微信号
5 public string MsgType { get; set; } 信息类型
6 public string EventName { get; set; }
7 public string Content { get; set; } 信息内容
8 public string EventKey { get; set; }
9 }

后台代码:

1 protected void Page_Load(object sender, EventArgs e)
2 {
3 wxmessage wx = GetWxMessage();
4 string res = "";
5
6 if (!string.IsNullOrEmpty(wx.EventName) && wx.EventName.Trim() == "subscribe")
7 {//刚关注时的时间,用于欢迎词
8 string content = "";
9 content = "你好,感谢你关注QLJ1314博客";
10 res = sendTextMessage(wx, content);
11 }
12 else
13 {
14 if (wx.MsgType == "text" && wx.Content == "你好")
15 {
16 res = sendTextMessage(wx, "你好,感谢你关注QLJ1314博客!");
17 }
18 else
19 {
20 res = sendTextMessage(wx, "这个我也没遇见过,正在向微信客服反应此事,请耐心等待或者可以直接打10086!");
21 }
22 }
23
24 Response.Write(res);
25 }
26 //获取用户基本信息
27 private wxmessage GetWxMessage()
28 {
29 wxmessage wx = new wxmessage();
30 StreamReader str = new StreamReader(Request.InputStream, System.Text.Encoding.UTF8);
31 XmlDocument xml = new XmlDocument();
32 xml.Load(str);
33 wx.ToUserName = xml.SelectSingleNode("xml").SelectSingleNode("ToUserName").InnerText;
34 wx.FromUserName = xml.SelectSingleNode("xml").SelectSingleNode("FromUserName").InnerText;
35 wx.MsgType = xml.SelectSingleNode("xml").SelectSingleNode("MsgType").InnerText;
36 if (wx.MsgType.Trim() == "text")
37 {
38 wx.Content = xml.SelectSingleNode("xml").SelectSingleNode("Content").InnerText;
39 }
40 if (wx.MsgType.Trim() == "event")
41 {
42 wx.EventName = xml.SelectSingleNode("xml").SelectSingleNode("Event").InnerText;
43 }
44
45
46 return wx;
47 }
48
49 /// <summary>
50 /// 发送文字消息
51 /// </summary>
52 /// <param name="wxCont">获取的收发者信息
53 /// <param name="content">内容
54 /// <returns>string </returns>
55 private string sendTextMessage(wxmessage wxCont, string content)
56 {
57 string res = string.Format(@" ",
58 wx.FromUserName, wx.ToUserName, DateTime.Now, content);
59 return res;
60 }

记着一定要和开发文档的格式一致,一定要把两个关系搞清楚呀。不然是实现不了效果的

微信公共平台开发3 .net的更多相关文章

  1. ASP.NET MVC 微信公共平台开发之获取用户消息并处理

    ASP.NET MVC 微信公共平台开发 获取用户消息并处理 获取用户消息 用户发送的消息是在微信服务器发送的一个HTTP POST请求中包含的,获取用户发送的消息要从POST请求的数据流中获取 微信 ...

  2. ASP.NET MVC 微信公共平台开发之验证消息的真实性

    ASP.NET MVC 微信公共平台开发 验证消息的真实性 在MVC Controller所在项目中添加过滤器,在过滤器中重写 public override void OnActionExecuti ...

  3. ASP.NET MVC 微信公共平台开发之 微信接入

    ASP.NET MVC 接入微信公共平台 申请微信公共账号 既然要接入微信公共平台,微信公共号是必须的(当然如果只是测试的话也可以申请微信公共平台接口测试账号),来这里微信公共平台 申请微信公共号(注 ...

  4. 微信公共平台开发-(.net实现)1--成为开发者

    刚换了个新环境,哎这都快一个月了,还没适应过来,还是怀念老地方呀.老板让开发一个基于微信平台的开发项目,而且是用net实现.当时就蒙了,微信就用了一会个人赶脚不好,所以果断不用,现在让开发,而且查了一 ...

  5. 微信公共平台开发1 .net

    如果想通过微信去开发(当然,指的是开发模式下),首先 建议先申请一个服务号,因为服务号的功能与接口也多,有些功能订阅号是实现不了的.另外申请过以后必须得通过微信 认证才能开发,好像是得付300大洋,高 ...

  6. 微信公共平台开发-(.net实现)5--access_token过期的问题

    每次在于微信交互时,都要用到access_token,但是这个值限制的是有时间的,但是access_token,在以后的高级功能里面会经常用到,所以这里不得不这里对前面所讲解的access_token ...

  7. 微信公共平台开发-(.net实现)3--发送文本消息

    最近,项目这边比较忙,没来得及续写,哎,先吐吐槽吧,在这个周六还得来上班,以后每个周六多要上,一天的滋味真有点受不鸟呀.还不习惯ing... 嗯,别的不说了现在开始接着上次http://www.cnb ...

  8. 微信公共平台开发-(.net实现)2--ACCESSTOKEN值获得

    成功的走出第一步后,我们紧接着趁热打铁开始下一步: 成为了开发者之后微信平台会给您AppId和AppSecret,在订阅号中是没有的,所以因该申请一下服务号, 若没有请注意上一篇http://www. ...

  9. 微信公共平台开发5 .net

    每次在于微信交互时,都要用到access_token,但是这个值限制的是有时间的,但是access_token,在以后的高级功能里面会经常用到,所以这里不得不这里对前面所讲解的access_token ...

随机推荐

  1. Unity Remote 4安卓机使用指南

    必须U3D版本为4.5以上,可以在Public目录下载.想实时调试IOS版本必须是MAC系统! 优点:可以在不编译的情况下实时的去调试真实Android设备的各种情况,包括使用触摸功能(Remote接 ...

  2. pod install 错误 - incompatible character encodings: UTF-8 and ASCII-8BIT

    pod install [!] Invalid `Podfile` file: incompatible character encodings: UTF-8 and ASCII-8BIT. Upda ...

  3. php高级面试题知识点(转载)

    php高级面试题知识点大全 时间:2016-01-26 06:36:22来源:网络 导读:php高级面试题知识点大全,本套面试题内容包括php魔术方法.php单点登录.linux基本命令.前端开发技术 ...

  4. Android UI开发第四十篇——ScrollTricks介绍

    ScrollTricks是一个开源控件,实现了两个简单功能: 1.Quick Return:向上滑动时,View也向上滑动并且消失,当向下滑动时,View马上出现.例如Google Now的搜索功能. ...

  5. (转) IPv6相关RFC

    转自http://blog.csdn.net/lucien_cc/article/details/12688477 IPv6 Spec RFC 2460 : Internet Protocol, Ve ...

  6. mongodb 监控分析命令

    1. bin/mongostate 2.开启慢查询用于调试 正式要关闭 可以在客户端调用db.setProfilingLevel(级别) 命令来实时配置.可以通过db.getProfilingLeve ...

  7. Tips2:无需Gizmo函数 和 附加Render 实现空物体(GameObject)的可视化

    Unity在场景创建过程中,可能会用到很多空物体,如生成器(Spawn)什么的,一般空物体默认是看不到的,其实,空物体可以通过设置为可见的,这样在用到空物体时就能更加方便的编辑和控制了. 1.可以是这 ...

  8. tiny4412的中断资源连接关系示意图

    在tiny4412的设备树中可以发现,中断资源是以树的形式呈现的,下面是我画的一张图,大致描述了tiny4412上中断资源的连接关系. 可以到http://pan.baidu.com/s/1ge0sz ...

  9. Sapi 添加语法的文章(转载)

    最近在做SAPI方面的工作,比较详细的中文资料不多,遇到各种问题,本来想着做完了项目总结一下,今天看到这篇文章,对于SAPI加载识别语法方面的描述十分详细,先转过来做个备份,谢谢原文博主:djyang ...

  10. SQL Server里因丢失索引造成的死锁

    在今天的文章里我想演示下SQL Server里在表上丢失索引如何引起死锁(deadlock)的.为了准备测试场景,下列代码会创建2个表,然后2个表都插入4条记录. -- Create a table ...