//protected IUserRepository<UserDTO> userRepository = RepositoryFactory.GetInstance().GetUserRepository(); //protected IAuthProfileRepository<AuthProfileDTO> authProfileRepository = RepositoryFactory.GetInstance().GetAuthProfileRepository(); public string Handle_LocationEventMessage(LocationMessage message) { //回复欢迎消息 TextMessage tm = new TextMessage(); tm.ToUserName = message.FromUserName; tm.FromUserName = message.ToUserName; tm.CreateTime = WeiXinHelper.GetNowTime(); //tm.Content = string.Format("您当前的经度:{0}, 纬度{1}",message.Longitude, message.Latitude); string url = string.Format("http://lbs.juhe.cn/api/getaddressbylngb?lngx={0}&lngy={1}", message.Longitude, message.Latitude); string content = HttpUtility.SendGetHttpRequest(url, "text/json"); //Log4netHelper.Write("content from web: " + content); JsonTextReader tr = new JsonTextReader(new StringReader(content)); JsonSerializer jSerializer = new JsonSerializer(); LocationSearchResult rObj = jSerializer.Deserialize<LocationSearchResult>(tr); //Log4netHelper.Write("resultinfo: " + rObj.resultinfo); //Log4netHelper.Write("formatted_address: " + rObj.row.result.formatted_address); //Log4netHelper.Write("Handle_LocationEventMessage content: " + content); tm.Content = string.Format("您当前的位置为:{0}", rObj.row.result.formatted_address); string returnValue = tm.GetResponseString(); return returnValue; }
/// <summary> /// 从xml数据加载文本消息 /// </summary> /// <param name="xml"></param> public static EventMessage LoadFromXml(XElement rootElement) { EventMessage em = null; string eventValue = rootElement.Element(WeiXinConstants.EVENT).Value.ToLower(); switch (eventValue) { case "click": case "view": em = new MenuEventMessage(); break; case "location": em = new LocationMessage(); break; default: em = new MenuEventMessage(); break; } em.FromXML(rootElement); return em; }