一、业务背景

最近项目需要与U8c对接,实现增删改查,借此机会,梳理一下C#解析Json字符串的问题。
这篇文章,先以新增接口为例。

二、新增接口

在这里插入图片描述
查看需要传入的json格式。

在这里插入图片描述
拼接json,无非就是{}[]的来回嵌套。
首先,我们先拼接主表parentvo{}

object parentvo = new
{
    cbiztype = dr["cbiztype"].ToString(),//业务流程
    cdeptid = dr["cdeptid"].ToString(),//采购部门
    coperator = dr["coperator"].ToString(),//制单人
    cpurorganization = dr["cpurorganization"].ToString(),//采购组织
    cvendormangid = dr["cvendormangid"].ToString(),//供应商管理
    tmaketime = dr["tmaketime"].ToString(),//制单日期
};

再拼接childrenvo []

  List<object> childrenvo = new List<object>();
   childrenvo.Add(new
 {
   
     cmangid = ""
     nordernum = ""
     ntaxrate = ""
     norgtaxprice = ""
 });

这里要学会new { }在这个地方的妙处。

最后拼接puordervo []

 List<object> orderlist = new List<object>();
 orderlist.Add(new { childrenvo = childrenvo, parentvo = parentvo });

绑定数据

  //绑定数据
  var inputdata = new
  {
      puordervo = orderlist
  };
 

序列化为json

 string strdata = JsonConvert.SerializeObject(inputdata);
 strdata = strdata.Replace("null", "");

三、总结

运用new,和list.add(),即可完成拼接嵌套。

GitHub 加速计划 / js / json
41.72 K
6.61 K
下载
适用于现代 C++ 的 JSON。
最近提交(Master分支:1 个月前 )
960b763e 4 个月前
8c391e04 7 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐