protected virtual SearchCondition ExtraQuery() { SearchCondition con = null; var query = HttpContext.Request.Query["q"]; if (!string.IsNullOrEmpty(query)) { var logger = _ILoggerFactory.CreateLogger(this.GetType().FullName); logger.LogInformation("准备解析查询字符串内容 q={query}", query); var temp = GZipHelper.DecompressString(query); var s = JsonConvert.DeserializeObject <SearchConditionWrap>(temp); if (!string.IsNullOrEmpty(s.SearchType)) { var t = TypeHelper.GetTypeOfName("LJH.RegionMonitor.Model", s.SearchType); if (t != null) { con = JsonConvert.DeserializeObject(s.Search, t) as SearchCondition; logger.LogInformation("解析查询字符串内容 type={type} con={con}", s.SearchType, con == null ? "null" : Newtonsoft.Json.JsonConvert.SerializeObject(con)); } else { logger.LogWarning("解析查询字符串失败"); } } else { logger.LogWarning("解析查询字符串失败"); } } return(con); }