我只有一种类型的json,其中包括一些属性
{"Agreement":{"agreementId":"1","CreatedOn":"2016-09-02T09:25:05","ModifiedOn":"2019-06-30T23:30:00.173"}}
我正在使用Newtonsoft JsonConvert。
是否可以将其解析为这样的模型?
public class Agreement
{
public int Id {get; set;}
public DateTime CreatedOn {get; set;}
public DateTime ModifiedOn {get; set;}
}
现在我必须声明其他包含此类的类
public class AgreementAdditional
{
public Agreement Agreement {get; set;}
}
可能是它的重复项,但我无法正确搜索到它
答案 0 :(得分:2)
您可以使用JObject
类。
var json = File.ReadAllText("json1.json");
var example = JObject.Parse(json)["Agreement"].ToObject<Agreement>();
尽管我认为AgreementAdditional
类没有问题,因为这是您输入的确切格式。
答案 1 :(得分:2)
您可以使用dynamic
。
使用Newtonsoft,您可以这样做:
dynamic result = JsonConvert.DeserializeObject(json);
使用JObject,您可以这样做:
dynamic result = JObject.Parse(json);
要使用动态对象,请在json文件上使用相同的名称。
result.Agreement.agreementId
...
但是,创建类仍然是代码维护的更好选择。