JavaScriptSerializer
类在 C# 中用于将对象序列化为 JSON 字符串,以及将 JSON 字符串反序列化为对象。然而,JavaScriptSerializer
不支持泛型。
如果你需要处理泛型,可以考虑使用 Json.NET
(现在称为 Newtonsoft.Json
)库。Json.NET
是一个功能强大的 JSON 序列化和反序列化库,支持泛型。以下是一个简单的示例,说明如何使用 Json.NET
处理泛型:
using Newtonsoft.Json;
using System;
public class GenericClass<T>
{
public T Data { get; set; }
}
public class Program
{
public static void Main()
{
var genericObject = new GenericClass<int> { Data = 42 };
// 序列化泛型对象
string json = JsonConvert.SerializeObject(genericObject);
Console.WriteLine("Serialized JSON: " + json);
// 反序列化泛型对象
var deserializedObject = JsonConvert.DeserializeObject<GenericClass<int>>(json);
Console.WriteLine("Deserialized object: " + deserializedObject.Data);
}
}
在这个示例中,我们使用 JsonConvert.SerializeObject
方法将泛型对象序列化为 JSON 字符串,然后使用 JsonConvert.DeserializeObject
方法将 JSON 字符串反序列化为泛型对象。注意,在反序列化时,我们需要指定泛型的类型(在本例中为 int
)。