Webservice或WebAPi Post类型传参,类对象格式转换

有类:

 public class ImgInfo
    {
        public int fs { get; set; }

        public string FileName { get; set; }

        public string oldPricute { get; set; }
    }

 

转换:

需要添加Newtonsoft.Json.dll的引用

ImgInfo info = new ImgInfo() { fs = 1};
string m_info =Newtonsoft.Json.JsonConvert.SerializeObject(info);
string strparame = SimplifyStr(m_info);   //   类对象转换为 Post符合要求的参数


        /// <summary>
        /// 去除掉json数据中属性为空的元素
        /// </summary>
        /// <param name="ss"></param>
        /// <returns></returns>
        public string SimplifyStr(string ss)
        {
            string strResult = "";
            ss = ss.Substring(0, ss.Length - 1);
            List<string> sarray = System.Text.RegularExpressions.Regex.Split(ss, ",", System.Text.RegularExpressions.RegexOptions.IgnoreCase).ToList();
            for (int i = sarray.Count - 1; i >= 0; i--)
            {
                if (sarray[i].Contains("\"\"") || sarray[i].Contains("null"))
                {
                    sarray.Remove(sarray[i]);
                }
            }
            foreach (var item in sarray)
            {
                strResult += item + ",";
            }
            strResult = strResult.Substring(0, strResult.Length - 1) + "}";
            return strResult;
        }

服务接口返回到是Json格式的字符串,可将字符串转化为对应的实体类对象:
string strResult = Clientinstance.PostFormData(string parame); //
strResult获取到的结果
OperateResult rb = JsonConvert.DeserializeObject<OperateResult>(strResult);       //OperateResult 对应的类

将json字符串生成为类在线工具:http://www.jsons.cn/jsontomodel/


 

posted @ 2020-04-27 16:22  Forbid404  阅读(765)  评论(0编辑  收藏  举报