JArray的使用以及动态获取对象属性值

Jarray转换为集合,转换过程中进行相应的特殊处理,通过属性名动态获取设置对象属性值
摘要由CSDN通过智能技术生成

在使用c#引用using Newtonsoft.Json;以及using Newtonsoft.Json.Linq;时我们有可能遇见某些值无法直接从Jarray转为list集合,这时我们就需要使用Jarray的特性以及c#内置方法手动的写一下转换方法。

我们先将拿到的json数据转换为Jarray数组数据,然后声明你要转换的数据集合、数据对象,将数组进行一下暂存使我们在foreach期间可以对数组进行操作

var jar = JArray.Parse(data);
List<Ims_TrainingDetails> saveList = new List<Ims_TrainingDetails>();
Ims_TrainingInformation saveTI = new Ims_TrainingInformation();
var saveJar = jar;

现在开始循环处理我们的Jarray数组,嵌套循环数组里面的所有的数据,通过Jarray一条数据的单个属性获取到相应的数据对象属性名,获取要储存对象的数据类型,进行相应的数据转换。

var type = info.GetProperty(items.Path.Remove(0, 4).ToString()).PropertyType;

在不同分支可对特殊数据进行特殊的处理然后保存。最后将对象保存到提前声明的集合中便完成了

foreach (var item in jar)
            {
                Ims_TrainingDetails saveInfo = new Ims_TrainingDetails();
                foreach (var items in item.Child
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值