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

时间:2023-03-08 23:40:54
asp.net 微信公众平台我也来搞一搞(看看和大家的有什么不一样)

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

好处:

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

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

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

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

缺点:

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

先看使用效果:

1.原始使用方式:

先建立一个web应用

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

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

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

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

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

 public class WeixinHandler : MicroMessageHandler
{
public override void Control(BaseMessage message, HttpContext context)
{
LogWriter.WriteLog("message", message.MsgType.ToString() + " \r\n" + 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

结构体系如下:

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

最后附上Micromessage.dll。

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