基本使用

using Newtonsoft.Json;

MyClass obj = new MyClass();
// 将obj对象实例序列化为Json格式的字符串
string JsonString = JsonConvert.SerializeObject(obj);
// 将Json格式的字符串反序列化为对象实例
MyClass obj = JsonConvert.DeserializeObject<MyClass>(JsonString);

疑难解答

Unable to find a constructor to use for type ***. A class should either have a default constructor, one constructor witharguments or a constructor marked with the JsonConstructor attribute. Path ‘***’ …

正如异常所说,这是因为Json.NET无法找到针对这个类的默认构造函数。此异常多出现在自定义构造函数后。

解决办法:如下,通过标签[JsonConstructor]手动指定类构造函数,需确保已引用Netonsoft.Json。

using Newtonsoft.Json; // 引用

public class Test
{
    string T;
    [JsonConstructor] // 标签
    public Test(string t)
    {
        T = t;
    }
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注