1、首先确保程序集中添加了 System.Web.Extensions DLL引用
2、代码中添加命名空间:using System.Web.Script.Serialization;
namespace JavescripSerializer { class Program { static void Main(string[] args) { JavaScriptSerializer Script = new JavaScriptSerializer(); User user = new User(); user.id = 1; user.UserName = "王文建"; user.Memo = "备注"; user.Tel.Add(new TelPhone() { Numer = "18363963258" }); user.Tel.Add(new TelPhone() { Numer = "18863936247" }); string result = Script.Serialize(user); //得到序列化json var User = Script.Deserialize<User>(result); //获得反序列化对象 } } /// <summary> /// 用户类 /// </summary> public class User { /// <summary> /// id /// </summary> public int id { get; set; } /// <summary> /// 用户名称 /// </summary> public string UserName { get; set; } /// <summary> /// 备注 /// </summary> public string Memo { get; set; } /// <summary> /// 电话号码-一个用户可以多个号码 /// </summary> public List<TelPhone> Tel { get; set; } public User() { Tel = new List<TelPhone>(); } } /// <summary> /// 电话类 /// </summary> public class TelPhone { /// <summary> /// 电话号码类 /// </summary> public string Numer { get; set; } } }
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决