/// <summary> /// 生成 GET 参数字符串 /// </summary> /// <param name="paramElement">参数元素</param> /// <returns></returns> private string GenGetParamString(IQfApiParameter paramElement) { var paramList = GenStrKvList(paramElement); if (paramList == null) { return(""); } var strList = paramList.Select(pair => string.Format("{0}={1}", pair.Key, pair.Value)).ToList(); return(string.Join("&", strList)); }
private List <KeyValuePair <string, string> > GenStrKvList(IQfApiParameter paramElement) { if (paramElement == null) { return(null); } var paramList = new List <KeyValuePair <string, string> >(); var type = paramElement.GetType(); foreach (PropertyInfo prop in type.GetProperties()) { var value = prop.GetValue(paramElement, null); paramList.Add(new KeyValuePair <string, string>(prop.Name, ValueConvert.ToString(value))); } return(paramList); }
/// <summary> /// 执行 POST 请求 /// </summary> /// <typeparam name="T">转换类型</typeparam> /// <param name="module">模块</param> /// <param name="controller">控制器</param> /// <param name="method">方法</param> /// <param name="postParamElement">POST 参数元素</param> /// <returns></returns> public QfJsonResultList <T> PostList <T>(string module, string controller, string method, IQfApiParameter postParamElement) { return(PostList <T>(module, controller, method, "", GenStrKvList(postParamElement))); }
/// <summary> /// 执行 POST 请求 /// </summary> /// <typeparam name="T">转换类型</typeparam> /// <param name="module">模块</param> /// <param name="controller">控制器</param> /// <param name="method">方法</param> /// <param name="paramList">参数列表</param> /// <param name="postParamElement">POST 参数元素</param> /// <returns></returns> public QfJsonResultList <T> PostList <T>(string module, string controller, string method, IEnumerable <KeyValuePair <string, string> > paramList, IQfApiParameter postParamElement) { return(PostList <T>(module, controller, method, GenGetParamString(paramList), GenStrKvList(postParamElement))); }
/// <summary> /// 执行 POST 请求 /// </summary> /// <param name="module">模块</param> /// <param name="controller">控制器</param> /// <param name="method">方法</param> /// <param name="postParamElement">POST 参数元素</param> /// <returns></returns> public string Post(string module, string controller, string method, IQfApiParameter postParamElement) { return(Post(module, controller, method, "", GenStrKvList(postParamElement))); }
/// <summary> /// 执行 POST 请求 /// </summary> /// <typeparam name="T">转换类型</typeparam> /// <param name="module">模块</param> /// <param name="controller">控制器</param> /// <param name="method">方法</param> /// <param name="paramElement">参数元素</param> /// <param name="postParamElement">POST 参数元素</param> /// <returns></returns> public T Post <T>(string module, string controller, string method, IQfApiParameter paramElement, IQfApiParameter postParamElement) { return(Post <T>(module, controller, method, GenGetParamString(paramElement), GenStrKvList(postParamElement))); }
/// <summary> /// 执行 POST 请求 /// </summary> /// <typeparam name="T">转换类型</typeparam> /// <param name="module">模块</param> /// <param name="controller">控制器</param> /// <param name="method">方法</param> /// <param name="paramElement">参数元素</param> /// <param name="postParamList">POST 参数列表</param> /// <returns></returns> public T Post <T>(string module, string controller, string method, IQfApiParameter paramElement, IEnumerable <KeyValuePair <string, string> > postParamList) { return(Post <T>(module, controller, method, GenGetParamString(paramElement), postParamList)); }
/// <summary> /// 执行 GET 请求 /// </summary> /// <typeparam name="T">转换类型</typeparam> /// <param name="module">模块</param> /// <param name="controller">控制器</param> /// <param name="method">方法</param> /// <param name="paramElement">参数元素</param> /// <returns></returns> public QfJsonResultList <T> GetList <T>(string module, string controller, string method, IQfApiParameter paramElement) { return(GetList <T>(module, controller, method, GenGetParamString(paramElement))); }
/// <summary> /// 执行 GET 请求 /// </summary> /// <param name="module">模块</param> /// <param name="controller">控制器</param> /// <param name="method">方法</param> /// <param name="paramElement">参数元素</param> /// <returns></returns> public string Get(string module, string controller, string method, IQfApiParameter paramElement) { return(Get(module, controller, method, GenGetParamString(paramElement))); }