zoukankan      html  css  js  c++  java
  • Newtonsoft.Json序列化和反序列

    1,序列化
    方法:SerializeObject

    返回结果是字符串,支持多线程,异步

    方法有7个重载

    2,反序列化方法

    DeserializeObject

    支持 泛型、异步、多线程

    看一下效果:

    //泛型
    public static T DeserializeObject<T>(string value);
    //异步
    public static Task<object> DeserializeObjectAsync(string value);

    下面简写几个例子,供参考

    序列化:

                var user = new User { Password = "123456", UserName = "TEST" };
                //转换为json字符串
                var resultStr = JsonConvert.SerializeObject(user);
                Console.WriteLine(resultStr);

    反序列化:

                //转换成对象
                var user1 = JsonConvert.DeserializeObject<User>(resultStr);
                Console.WriteLine(user1.ToString());

    集合也一样:

                //复杂一点的
                var role = new Role { Name = "角色名" };
                role.UserList = new List<User>();
                role.UserList.Add(user);
                role.UserList.Add(user1);
    
                var roleStr = JsonConvert.SerializeObject(role);
                Console.WriteLine(roleStr);
    
                var role1 = JsonConvert.DeserializeObject<Role>(roleStr);
                Console.WriteLine(role1.ToString());
    
    
                //集合
                var userlist = JsonConvert.SerializeObject(role.UserList);
                Console.WriteLine(userlist);
                var userList = JsonConvert.DeserializeObject<List<User>>(userlist);
                Console.WriteLine(userList.ToString());

     简单demo下载

  • 相关阅读:
    记一次线上网络问题排查
    记服务器上session设置引起的OutofMemory
    由DateFormat引起的线程安全问题
    十二周总结
    团队开发冲刺第十天
    团队开发冲刺第九天
    团队开发冲刺第八天
    团队开发冲刺第七天
    十二周总结
    团队开发冲刺第六天
  • 原文地址:https://www.cnblogs.com/langhua/p/4360199.html
Copyright © 2011-2022 走看看