博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C# -- 把json字符串转为对象并读取各属性的值
阅读量:7027 次
发布时间:2019-06-28

本文共 1104 字,大约阅读时间需要 3 分钟。

前面2种方法是不需要声明一个Json字符串的类型即可把Json字符串转换为Dictionary对象

而第3种方法则是声明一个Json字符串的强类型对象,然后反序列化为该对象的数据。

 

List<
string> list = 
new List<
string>();
            
string json = JsonConvert.SerializeObject(
new { Name = 
"
jeff
", Age = 
23, Code = 
"
f04536a3-832c-4ebd-95d0-15af82dbb1a2
", PhoneNumber = 
"
15902104019
" });
            IDictionary<
string, JToken> data = JsonConvert.DeserializeObject<JObject>(json);
            
foreach (
var i 
in data)
            {
                
string key = i.Key;
                
var value = i.Value;
                
if (value.Type.ToString() == 
"
String
")
                {
                    list.Add(value.ToString());
                }
            }
            
var result = JsonConvert.DeserializeObject<IDictionary<
string
object>>(json);
            
var name = result[
"
Name
"];
            
var age = result[
"
Age
"];
            
foreach (
var p 
in result.Keys)
            {
                
var value = result[p];
            }
            
int j = 
0;
            
foreach (
var p 
in result)
            {
                
var key = p.Key;
                
var value = p.Value;
                
var type = p.Value.GetType();
                
if (type == 
typeof(
string))
                {
                    j += 
1;
                }
            }
            clsTest obj = JsonConvert.DeserializeObject<clsTest>(json);
            
var name1 = obj.GetType().GetProperty(
"
Name
");
            
foreach (
var p 
in obj.GetType().GetProperties())
            {
                
var type = p.GetType().Name;
                
var key = p.Name;
                
var value = p.GetValue(obj);
            }

 

转载地址:http://wnrxl.baihongyu.com/

你可能感兴趣的文章
Spring boot学习(三) Spring boot整合mybatis
查看>>
Redux 源码深度解析(附带视频1月14号上传)
查看>>
理解webpack原理,手写一个100行的webpack
查看>>
Node.js & Express 项目基本搭建
查看>>
掌握 MySQL 这 19 个骚操作,效率至少提高3倍
查看>>
【跃迁之路】【744天】程序员高效学习方法论探索系列(实验阶段501-2019.3.6)...
查看>>
用于大数据测试、学习的测试数据
查看>>
Software System Analysis and Design | 1
查看>>
JavaScript函数式编程,真香之组合(一)
查看>>
JavaScript链式调用实例浅析
查看>>
报表没完没了怎么办? | 润乾集算器提效报表开发
查看>>
记一次Hexo迁移
查看>>
RESTful API 中的 Status code 是否要遵守规范
查看>>
第十一天-《企业应用架构模式》-对象-关系行为模式
查看>>
[spring boot] jdbc
查看>>
新的开始!
查看>>
区块链— 比特币中的区块、账户验证和记账
查看>>
Electron打包,NSIS修改默认安装路径
查看>>
分享一些好用的网站
查看>>
【Android】Retrofit 2.0 的使用
查看>>