我想在Cake构建脚本中使用Json.net来序列化和反序列化json,但是不知道如何引用它。
#addin packageid
由于它不是“本地”Cake addin,您需要向命名空间添加using或使用完全限定名称来使用所需的类型。例如,在构建脚本顶部添加using:
using Newtonsoft.Json;
或者使用完全限定的类型名称:
Newtonsoft.Json.JsonConvert.SerializeObject(...)
#addin "nuget:https://www.nuget.org/api/v2?package=Newtonsoft.Json"
using Newtonsoft.Json;
public class MissingPerson
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
var john = new MissingPerson {
FirstName = "John",
LastName = "Doe"
};
// Serialize and output MissingPerson as json
Information(
"MissingPerson as json: {0}",
JsonConvert.SerializeObject(john, Formatting.Indented)
);
/*
* This will output
* MissingPerson as json: {
* "FirstName": "John",
* "LastName": "Doe"
* }
*/
var jsonMissingPerson = "{\"FirstName\": \"Jane\",\"LastName\": \"Doe\"}";
// Deserialize json string to object
var jane = JsonConvert.DeserializeObject<MissingPerson>(jsonMissingPerson);
Information(
"Missing Person from json:\r\n\tFirstName: {0}\r\n\tLastName: {1}",
jane.FirstName,
jane.LastName
);
/*
* This will output
* Missing Person from json:
* FirstName: Jane
* LastName: Doe
*/