public void TestResponseTextMessageSerialization() { var msg = new WeChatResponseTextMessage(); msg.FromUserName = "******"; msg.ToUserName = "******"; var dt = new DateTime(2016, 3, 1, 12, 30, 11); msg.CreateTime = DateTimeHelper.ConvertToWeChatTimestamp(dt); msg.Content = "test"; var xml = XmlSerializationHelper.SerializeObject(msg); Assert.IsNotNull(xml); using (StringReader s = new StringReader(xml)) { XDocument result = XDocument.Load(s); Assert.AreEqual("xml", result.Root.Name.LocalName); Assert.AreEqual("test", result.Element("xml").Element("Content").Value); Assert.AreEqual("gh_a96a4a619366", result.Element("xml").Element("ToUserName").Value); Assert.AreEqual("olPjZjsXuQPJoV0HlruZkNzKc91E", result.Element("xml").Element("FromUserName").Value); Assert.AreEqual(dt, DateTimeHelper.ConvertFromWeChatTimeStamp(result.Element("xml").Element("CreateTime").Value)); } }
public async override Task <ActionResult> Index(string signature, string timestamp, string nonce, string echostr, string message) { if (!CheckSignature.Check(signature, timestamp, nonce, Token)) { this.Logger.InfoFormat("signature:{0},timestamp:{1},nonce:{2}", signature, timestamp, nonce); Content("Error:101"); } var requestMsg = WeChatRequestMessageFactory.Create(message, EncodingAESKey, AppId); var eventLog = new CreateEventLogInput() { CreationTime = DateTime.Now, FromUserName = requestMsg.FromUserName, ToUserName = requestMsg.ToUserName, OriginalXml = message, MsgType = requestMsg.MsgType.ToString() }; _eventLogService.CreateEventLog(eventLog); if (requestMsg is WeChatRequestTextMessage) { //处理文本输入 var request = requestMsg as WeChatRequestTextMessage; //处理URL文本 var msg = new WeChatResponseTextMessage(); msg.FromUserName = request.ToUserName; msg.ToUserName = request.FromUserName; msg.CreateTime = DateTimeHelper.NowForWeChat; msg.Content = "Hello World powered by Neuzilla Wex framework" + WeChatEmotions.GetEmotion(WeChatEmotionType.Smile).SymbolCode; return(Content(msg.ToXml())); } else { var msg = new WeChatResponseTextMessage(); msg.FromUserName = requestMsg.ToUserName; msg.ToUserName = requestMsg.FromUserName; msg.CreateTime = DateTimeHelper.NowForWeChat; msg.Content = "主人,我听不懂你在说什么" + WeChatEmotions.GetEmotion(WeChatEmotionType.Swear).SymbolCode; return(Content(msg.ToXml())); } }