【发布时间】:2017-10-04 22:13:43
【问题描述】:
我有一个 Angular 项目,但这与 Angular 没有直接关系,我只需要使用树创建动态菜单的逻辑,它也可以与 ASP.NET MVC 项目中的类似。因此,您对 ASP.NET MVC 等的建议也将对我有所帮助。
我使用 PrimeNG Tree 并想从 MSSQL 数据库中的表中获取菜单:
菜单表(数据已更改,例如使用情况):
Id | Order | ParentId | Name |
1 1 0 Documents
2 1 1 Work
3 1 2 Expenses.doc
4 2 2 Resume.doc
5 2 1 Home
6 1 5 Invoices.txt
...
为了填充菜单项,我需要生成如下所示的 JSON 字符串:
{
"data":
[
{
"label": "Documents",
"data": "Documents Folder",
"expandedIcon": "fa-folder-open",
"collapsedIcon": "fa-folder",
"children": [{
"label": "Work",
"data": "Work Folder",
"expandedIcon": "fa-folder-open",
"collapsedIcon": "fa-folder",
"children": [{"label": "Expenses.doc", "icon": "fa-file-word-o", "data": "Expenses Document"}, {"label": "Resume.doc", "icon": "fa-file-word-o", "data": "Resume Document"}]
},
{
"label": "Home",
"data": "Home Folder",
"expandedIcon": "fa-folder-open",
"collapsedIcon": "fa-folder",
"children": [{"label": "Invoices.txt", "icon": "fa-file-word-o", "data": "Invoices for this month"}]
}]
},
... //omitted for brevity
]
}
所以,我真的不知道逻辑和数据库表设计(菜单)。我应该在控制器或其他地方生成上面的 JSON 吗?您能否发布有关此问题的建议和示例方法?
【问题讨论】:
-
@StephenMuecke 嗨 Stephane,对不起,我对这个问题真的没有经验。如果你有时间,你能举个例子吗?或者给我推荐一个网络上的示例使用页面?在此先感谢...
-
@StephenMuecke 亲爱的 Stephane,我病了,无法查看您的回答。你为什么删除它?你能再发一次吗? :((
标签: asp.net-mvc angular primeng