Построить иерархию JSON из структурированных данных
C # | .NET 4.5 | Entity Framework 5
У меня есть данные, возвращаемые из запроса SQL в виде идентификатора, ParentID, имени. Я'Я хотел бы взять эти данные и проанализировать их в иерархическую строку JSON. Пока что это кажется гораздо более сложной задачей, чем должно быть. Так как я'Используя Entity, данные возвращаются мне как IEnumerable. Теперь я верю, что мне нужна какая-то форма рекурсии, но яЯ не совсем уверен, с чего начать. Любая помощь приветствуется.
Данные возвращаются как
id parentId name 1 1 TopLoc 2 1 Loc1 3 1 Loc2 4 2 Loc1A
Код
public static string GetJsonLocationHierarchy(long locationID)
{
using (EntitiesSettings context = new EntitiesSettings())
{
// IEnumerable of ID,ParentID,Name
context.GetLocationHierarchy(locationID);
}
}
Конечный результат яНадеюсь, будет что-то вроде этого:
{
"id": "1",
"parentId": "1",
"name": "TopLoc",
"children": [
{
"id": "2",
"parentId": "1",
"name": "Loc1",
"children": [
{
"id": "4",
"parentId": "2",
"name": "Loc1A",
"children": [
{}
]
}
]
},
{
"id": "3",
"parentId": "1",
"name": "Loc2",
"children": [
{}
]
}
]
}