Tôi đang cố gắng phân tích cú pháp tệp json bằng json.net. Tệp trông giống như thế nàyLàm thế nào để làm đệ quy gốc của json sử dụng json.net?
{X:
{
Title:"foo",
xxxx:xxxx
}
}
{Y:
{ZZ:
{Title: "bar",...}
}
}
Tôi đang cố gắng xử lý lại cấu trúc này xử lý tất cả các đối tượng có thuộc tính Tiêu đề. Nhưng tôi bối rối về JToken
, JProperty
, JContainer
, JValue
, JObject
. Đọc mã nguồn đã không để lại cho tôi nhiều khôn ngoan hơn và không có mẫu nào giúp ích. Tôi muốn một cái gì đó dọc theo các dòng của
WalkNode(node, Action<Node> action)
{
foreach(var child in node.Children)
{
Action(child);
WalkNode(child);
}
}
Parse()
{
WalkNode(root, n=>
{
if(n["Title"] != null)
{
...
}
});
}
Một số câu hỏi: Ví dụ trên không phải là JSON hợp lệ. Có phải các đối tượng chứa các thuộc tính X và Y được cho là nằm trong một mảng hay bạn có ý định cho X và Y nằm trong cùng một đối tượng chứa không? Ngoài ra, sẽ có mảng ở bất kỳ đâu trong cấu trúc phân cấp JSON mà bạn cần duyệt hay chỉ là các đối tượng và thuộc tính lồng nhau? –