给出以下 json 结果: 默认的 json 结果有一组已知的字段:
{
"id": "7908",
"name": "product name"
}
但是可以使用其他字段(在本例中为 _unknown_field_name_1
和 _unknown_field_name_2
)进行扩展,在请求结果时这些字段的名称是未知的。
{
"id": "7908",
"name": "product name",
"_unknown_field_name_1": "some value",
"_unknown_field_name_2": "some value"
}
我希望对 json 结果进行序列化和反序列化,从一个包含已知字段属性的类进行反序列化,并将未知字段(没有属性)映射到一个属性(或多个属性) ,如字典,以便可以访问和修改它们。
public class Product
{
public string id { get; set; }
public string name { get; set; }
public Dictionary<string, string> fields { get; set; }
}
我认为我需要一种方法来插入一个 json 序列化程序,并自己为缺少的成员进行映射(同时进行序列化和反序列化)。 我一直在考虑各种可能性:
我正在使用 restSharp,但任何序列化程序都可以插入。
哦,我不能改变 json 的结果,而且 这个和 这个也帮不了我。
更新: 这看起来更像是一个 http://geekswithblogs.net/davidhoerster/archive/2011/07/26/json.net-custom-convertersndasha-quick-tour.aspx