public ActionResult Action()
        {
            try
            {
                #region 获取请求xml内容
                Stream requestStream = Request.InputStream;
                long   requestlength = requestStream.Length;
                byte[] requestBytes  = new byte[requestlength];
                requestStream.Read(requestBytes, 0, (int)requestlength);
                string requestStr = Encoding.UTF8.GetString(requestBytes);
                //                string requestStr = @"<xml><ToUserName><![CDATA[gh_4ce5c62397ff]]></ToUserName>
                //                                    <FromUserName><![CDATA[oiI62v8GLf52lVLsQyQvrRKGUrRk]]></FromUserName>
                //                                    <CreateTime>1464965475</CreateTime>
                //                                    <MsgType><![CDATA[text]]></MsgType>
                //                                    <Content><![CDATA[趣图]]></Content>
                //                                    <MsgId>6291978805302987227</MsgId>
                //                                </xml>";



                #endregion
                string             requestJson      = requestStr.ToXMLJson();
                MsgType            requestmsgType   = WXQueryFactory.GetMsgType(requestJson);
                BaseRequestData    requestData      = WXQueryFactory.GetRequestModel(requestJson, requestmsgType);
                WX_RequestBusiness _requestBusiness = new WX_RequestBusiness();
                if (requestData != null)
                {
                    int           requestid     = _requestBusiness.AddRequestMsgLog(requestData, requestJson, requestStr);
                    WXForResponse responsecmd   = new WXForResponse(requestData, requestmsgType);
                    var           responsemodel = responsecmd.GetResponseModel();
                    var           resuponsexml  = responsecmd.GetResponseXML(responsemodel);
                    //var model = new WXModel.WXTransmitData.ResponseData.Image_TextResponseMsg();
                    //model.Title = "图文消息title";
                    //model.ToUserName = "******";
                    //model.FromUserName = "******";
                    //model.MsgType = "news";
                    //model.Articles = new WXModel.WXTransmitData.ResponseData.Article[2];
                    //model.Articles[0] = (new WXModel.WXTransmitData.ResponseData.Article { Description = "第一个描述", PicUrl = "图片1", Url = "跳转url1", Title = "第一个" });
                    //model.Articles[1] = (new WXModel.WXTransmitData.ResponseData.Article { Description = "第2个描述", PicUrl = "图片2", Url = "跳转url2", Title = "第2个" });
                    //resuponsexml = model.ToResponseXml<WXModel.WXTransmitData.ResponseData.Image_TextResponseMsg>();
                    _requestBusiness.AddResponseMsgLog(responsemodel, requestid, resuponsexml);

                    //                    resuponsexml = string.Format(@"<xml>
                    //            <Content><![CDATA[你好,这是一条测试回复信息]]></Content>
                    //            <ToUserName><![CDATA[{0}]]></ToUserName>
                    //            <FromUserName><![CDATA[{1}]]></FromUserName>
                    //            <CreateTime><![CDATA[12345678]]></CreateTime>
                    //            <MsgType><![CDATA[text]]></MsgType>
                    //            </xml>", requestData.FromUserName, requestData.ToUserName);
                    return(Content(resuponsexml, "text/xml"));
                }
                else
                {
                    _requestBusiness.AddRequestParserFail(requestStr, requestJson);
                }

                return(Content(requestJson, "text/xml")); //将随机生成的 echostr 参数 原样输出就能通过token验证了。
            }
            catch (Exception ex)
            {
                GlobalBusiness.AddGlobalError(ex.Message + ex.StackTrace);
                throw ex;
            }
            return(Content(""));
        }