• asp.net 微信公众平台我也来搞一搞(看看和大家的有什么不一样)


    去年10月份左右接触的微信,今年又要在上面做新的改动(好烦人,为什么我这么懒),小菜用了2天的工作日,做了一个微信解析器,方便大家调用。

    好处:

    1.屌丝们不用再去做微信验证。

    2.屌丝们不用去解析xml文档了。

    3.屌丝们不用再看到一大堆的解析判断代码了。

    4.屌丝们这个解析器可以一直用下去啊。

    缺点:

    业务上的逻辑必须自己手动实现哦。

    先看使用效果:

    1.原始使用方式:

    先建立一个web应用

    之后再Hanlder文件中各种,蛋疼的if else 各种 swtich 各种。

    ProcessRequest 里面我都不想再看了,太乱了。

    使用微信解析器后的调用方式如下:

     public class WeixinHandler : MicroMessageHandler
        {
            public override void Control(BaseMessage message, HttpContext context)
            {
                LogWriter.WriteLog("message", message.MsgType.ToString() + " 
    " + message.XmlContext, context);
    
                if (message.MsgType == MessageType.Text)
                {
                    ReceiveTextMessage m = (ReceiveTextMessage)message;
    
                    ReplyTextMessage a = new ReplyTextMessage();
                    a.FromUserName = m.ToUserName;
                    a.ToUserName = m.FromUserName;
                    a.Content = m.Content;
    
                    context.Response.Write(a.ToString());
                }
    
                if (message.MsgType == MessageType.Event)
                {
                    BaseEvent ev = (BaseEvent)message;
    
                    if (ev.Event == EventType.Subscribe)
                    {
                        SubscribeEvent se = (SubscribeEvent)ev;
    
                        ReplyTextMessage a = new ReplyTextMessage();
                        a.FromUserName = se.ToUserName;
                        a.ToUserName = se.FromUserName;
                        a.Content = "欢迎关注鑫考家校互联咨询群";
    
                        context.Response.Write(a.ToString());
                    }
    
                    if (ev.Event == EventType.Unsubscribe)
                    {
                        LogWriter.WriteLog("unsubscribe", message.FromUserName, context);
                    }
    
                }
    
            }
        }

    通过BaseMessage基类,取回事件与消息内容。

    Micromessage

    结构体系如下:

    最后附上Micromessage.dll。

    下载地址:http://pan.baidu.com/s/1qWCsOMC(博客园的上传附件,俺不会使)

  • 相关阅读:
    hdu-1698(线段树,区间修改)
    hdu-1394(线段树)
    hdu-1166(线段树)
    hdu-1251(string+map)
    hdu-1711(kmp算法)
    hdu-2191(完全背包+二进制优化模板)
    hdu-2844(完全背包+二进制优化模板)
    hdu-1171(多重背包+二进制优化)
    SpringMVC 参数中接收数组、List写法
    如何高效的查询数组中是否包含某个值
  • 原文地址:https://www.cnblogs.com/BinaryBoy/p/3670654.html
Copyright © 2020-2023  润新知