public JsonResult TryGetProps(PartCodeInnput input) { try { PartCodeResult result = GetPartResult(input); return(new JsonResult(result)); } catch (Exception ex) { var errorResult = new { error = "JsonPath Error : " + ex.Message }; return(new JsonResult(errorResult)); } }
private static PartCodeResult GetPartResult(PartCodeInnput input) { JToken token = JToken.Parse(input.Json); var paramDefList = new List <ParamDef>(); var ErrorCount = 0; if (input.TemplateName == TemplateType.QueryParamsDef || input.TemplateName == TemplateType.Filters || input.TemplateName == TemplateType.QueryParamsQueryCode) { foreach (var item in token.SelectToken(input.JsonPath)) { try { var def = new ParamDef(); GetParemeters(item, def); paramDefList.Add(def); } catch { ErrorCount++; } } } else { foreach (var item in token.SelectToken(input.JsonPath)) { try { var def = new ParamDef(); GetProperties(item, def); paramDefList.Add(def); } catch { ErrorCount++; } } } var result = new PartCodeResult { TemplateName = input.TemplateName, Properties = paramDefList, ErrorCount = ErrorCount }; return(result); }