C# Automapper-将平面数据映射到分层数据
假设我有一个如下所示的数据集,其中包含一个父组、一个二级组和一个三级组。假设groupId也是唯一的。给定这组数据,我如何使用Automapper的解决方案将这些数据映射到层次结构形式C# Automapper-将平面数据映射到分层数据,c#,.net,automapper,C#,.net,Automapper,假设我有一个如下所示的数据集,其中包含一个父组、一个二级组和一个三级组。假设groupId也是唯一的。给定这组数据,我如何使用Automapper的解决方案将这些数据映射到层次结构形式 "Groups": [ { "ParentGroupId": "1", "ParentGroupName": "Parent Group 1", "SecondLevelGroupId": "11", "SecondLevelGroupName": "Second Level
"Groups": [
{
"ParentGroupId": "1",
"ParentGroupName": "Parent Group 1",
"SecondLevelGroupId": "11",
"SecondLevelGroupName": "Second Level Group 1",
"ThirdLevelGroupId": null,
"ThirdLevelGroupName": null
},
{
"ParentGroupId": "1",
"ParentGroupName": "Parent 1"
"SecondLevelGroupId": "12",
"SecondLevelGroupName": "Second Level Group 2",
"ThirdLevelGroupId": null,
"ThirdLevelGroupName": null
},
{
"ParentGroupId": "2",
"ParentGroupName": "Parent 2"
"SecondLevelGroupId": "21",
"SecondLevelGroupName": "Second Level Group 1",
"ThirdLevelGroupId": "31",
"ThirdLevelGroupName": "Third Level Group 1"
},
{
"ParentGroupId": "2",
"ParentGroupName": "Parent 2"
"SecondLevelGroupId": "21",
"SecondLevelGroupName": "Second Level Group 1",
"ThirdLevelGroupId": "32",
"ThirdLevelGroupName": "Third Level Group 2"
},
{
"ParentGroupId": "2",
"ParentGroupName": "Parent 2"
"SecondLevelGroupId": "22",
"SecondLevelGroupName": "Second Level Group 2",
"ThirdLevelGroupId": "33",
"ThirdLevelGroupName": "Third Level Group 1"
}
]
这是我希望将其映射到的层次结构形式(注意:JSON是手工编写的,可能存在一些语法错误)
Automapper映射json数据吗?我只是用json来表示数据的结构。
"Groups": [
{
"GroupId": "1",
"GroupName": "Parent Group 1",
"ChildGroups": [
{
"GroupId": "11",
"GroupName": "Second Level Group 1",
"ChildGroups": null
},
{
"GroupId": "12",
"GroupName": "Second Level Group 2",
"ChildGroups": null
}
]
},
{
"GroupId": "2",
"GroupName": "Parent 2"
"ChildGroups": [
{
"GroupId": "21",
"GroupName": "Second Level Group 1",
"ChildGroups": [
{
"GroupId": "31",
"GroupName": "Third Level Group 1",
"ChildGroups": null
},
{
"GroupId": "32",
"GroupName": "Third Level Group 2",
"ChildGroups": null
}
]
},
{
"GroupId": "22",
"GroupName": "Second Level Group 2",
"ChildGroups": [
{
"GroupId": "33",
"GroupName": "Third Level Group 1",
"ChildGroups": null
}
]
}
]
}
]