コード例 #1
0
        public async Task <JsonResult> Post(Models.ApiModel apiModel)
        {
            var customHeadersList = new Dictionary <string, string>();
            var cCodeVal          = !string.IsNullOrEmpty(Request.Headers["CCode"]) ? Request.Headers["CCode"].ToString() : string.Empty;
            var uCodeVal          = !string.IsNullOrEmpty(Request.Headers["UCode"]) ? Request.Headers["UCode"].ToString() : string.Empty;

            customHeadersList.Add("CCode", cCodeVal);
            customHeadersList.Add("UCode", uCodeVal);
            string token = Request.Cookies["MAQTA-LOCAL-TOKEN"].Value;

            //ITokenContainer tokenContainer = new TokenContainer();

            if (token == null)
            {
                return(Json(new
                {
                    redirectUrl = Url.Action("LogOff", "Account"),
                    isRedirect = true
                }, JsonRequestBehavior.AllowGet));
            }
            var data = GetTargetData(apiModel);

            ApiHelper.Client.ApiClient client = new ApiHelper.Client.ApiClient(HttpClientInstance.Instance, token);
            GenericClient cb = new GenericClient(client);

            var response = await cb.Post(apiModel.ApiUrl, data, customHeadersList);

            return(Json(response, JsonRequestBehavior.AllowGet));
        }
コード例 #2
0
        private static dynamic GetTargetData(Models.ApiModel apiModel)
        {
            if (apiModel.Data != null)
            {
                var targetTypeValue = string.Format("{0}.{1}", "ADP.MG.Pcs.Models", apiModel.TargetType);

                var targetType = BuildManager.GetType(targetTypeValue, false);

                var data = JsonConvert.DeserializeObject(apiModel.Data, targetType);
                return(data);
            }
            else
            {
                return(null);
            }
        }