151 lines
5.1 KiB
C#
151 lines
5.1 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using System.Xml;
|
||
|
||
namespace SuperMap.RealEstate.WeiXinExtend
|
||
{
|
||
/// <summary>
|
||
/// 接受的消息
|
||
/// </summary>
|
||
public class ReceiveMessage
|
||
{
|
||
/// <summary>
|
||
/// 构造函数
|
||
/// </summary>
|
||
/// <param name="ReceivePostString">解析的字符串</param>
|
||
public ReceiveMessage(string ReceivePostString)
|
||
{
|
||
XmlDocument _XmlDocument = new XmlDocument();
|
||
_XmlDocument.LoadXml(ReceivePostString);
|
||
XmlElement _XmlElement = _XmlDocument.DocumentElement;
|
||
XmlNode _XmlNode;
|
||
|
||
ToUserName = _XmlElement.SelectSingleNode("ToUserName").InnerText;
|
||
FromUserName = _XmlElement.SelectSingleNode("FromUserName").InnerText;
|
||
CreateTime = _XmlElement.SelectSingleNode("CreateTime").InnerText;
|
||
MsgType = _XmlElement.SelectSingleNode("MsgType").InnerText;
|
||
|
||
//消息id 事件推送之外共有
|
||
_XmlNode = _XmlElement.SelectSingleNode("MsgId");
|
||
if (_XmlNode != null) MsgId = _XmlNode.InnerText;
|
||
//文本消息
|
||
_XmlNode = _XmlElement.SelectSingleNode("Content");
|
||
if (_XmlNode != null) Content = _XmlNode.InnerText;
|
||
//图片消息
|
||
_XmlNode = _XmlElement.SelectSingleNode("PicUrl");
|
||
if (_XmlNode != null) PicUrl = _XmlNode.InnerText;
|
||
//地理位置消息
|
||
_XmlNode = _XmlElement.SelectSingleNode("Location_X");
|
||
if (_XmlNode != null) Location_X = _XmlNode.InnerText;
|
||
_XmlNode = _XmlElement.SelectSingleNode("Location_Y");
|
||
if (_XmlNode != null) Location_Y = _XmlNode.InnerText;
|
||
_XmlNode = _XmlElement.SelectSingleNode("Scale");
|
||
if (_XmlNode != null) Scale = _XmlNode.InnerText;
|
||
_XmlNode = _XmlElement.SelectSingleNode("Label");
|
||
if (_XmlNode != null) Label = _XmlNode.InnerText;
|
||
//链接消息
|
||
_XmlNode = _XmlElement.SelectSingleNode("Title");
|
||
if (_XmlNode != null) Title = _XmlNode.InnerText;
|
||
_XmlNode = _XmlElement.SelectSingleNode("Description");
|
||
if (_XmlNode != null) Description = _XmlNode.InnerText;
|
||
_XmlNode = _XmlElement.SelectSingleNode("Url");
|
||
if (_XmlNode != null) Url = _XmlNode.InnerText;
|
||
//事件推送
|
||
_XmlNode = _XmlElement.SelectSingleNode("Event");
|
||
if (_XmlNode != null) Event = _XmlNode.InnerText;
|
||
_XmlNode = _XmlElement.SelectSingleNode("EventKey");
|
||
if (_XmlNode != null) EventKey = _XmlNode.InnerText;
|
||
}
|
||
|
||
#region 公共属性
|
||
/// <summary>
|
||
/// 开发者微信号
|
||
/// </summary>
|
||
public string ToUserName { get; internal set; }
|
||
/// <summary>
|
||
/// 发送方帐号(一个OpenID)
|
||
/// </summary>
|
||
public string FromUserName { get; internal set; }
|
||
/// <summary>
|
||
/// 消息创建时间 (整型)
|
||
/// </summary>
|
||
public string CreateTime { get; internal set; }
|
||
/// <summary>
|
||
/// 消息类型
|
||
/// </summary>
|
||
public string MsgType { get; internal set; }
|
||
#endregion
|
||
|
||
/// <summary>
|
||
/// 消息id,64位整型 (事件推送之外共有)
|
||
/// </summary>
|
||
public string MsgId { get; internal set; }
|
||
|
||
#region 文本消息
|
||
/// <summary>
|
||
/// 文本消息内容
|
||
/// </summary>
|
||
public string Content { get; internal set; }
|
||
|
||
#endregion
|
||
|
||
#region 图片消息
|
||
/// <summary>
|
||
/// 图片链接
|
||
/// </summary>
|
||
public string PicUrl { get; internal set; }
|
||
|
||
#endregion
|
||
|
||
#region 地理位置消息
|
||
/// <summary>
|
||
/// 地理位置纬度
|
||
/// </summary>
|
||
public string Location_X { get; internal set; }
|
||
/// <summary>
|
||
/// 地理位置纬度
|
||
/// </summary>
|
||
public string Location_Y { get; internal set; }
|
||
/// <summary>
|
||
/// 地图缩放大小
|
||
/// </summary>
|
||
public string Scale { get; internal set; }
|
||
/// <summary>
|
||
/// 地理位置信息
|
||
/// </summary>
|
||
public string Label { get; internal set; }
|
||
|
||
#endregion
|
||
|
||
#region 链接消息
|
||
/// <summary>
|
||
/// 消息标题
|
||
/// </summary>
|
||
public string Title { get; internal set; }
|
||
/// <summary>
|
||
/// 消息描述
|
||
/// </summary>
|
||
public string Description { get; internal set; }
|
||
/// <summary>
|
||
/// 消息链接
|
||
/// </summary>
|
||
public string Url { get; internal set; }
|
||
#endregion
|
||
|
||
#region 事件推送
|
||
|
||
/// <summary>
|
||
/// 事件类型,subscribe(订阅)、unsubscribe(取消订阅)、CLICK(自定义菜单点击事件)
|
||
/// </summary>
|
||
public string Event { get; internal set; }
|
||
|
||
/// <summary>
|
||
/// 事件KEY值,与自定义菜单接口中KEY值对应
|
||
/// </summary>
|
||
public string EventKey { get; internal set; }
|
||
#endregion
|
||
}
|
||
}
|