繁体   English   中英

如何在 ASP.net 核心 API C# 中返回具有存储库模式的自我父子?

[英]How to return self parent and child with repository pattern in ASP net core API C#?

我的问题 我有一个名为 category 的表,该表有此列 { ID, ParentId, name }。 ParentId 是相同的 Id,作为此表的示例:

ID 父母身份 名称
1个 NULL 移动的
2个 1个 苹果手机
3个 1个 Android
4个 2个 饰品

像那样,我需要使用 .net core ape 中的通用存储库模式返回数据,例如:

ID 名称 父母名字
2个 IPhone 移动的
3个 IPhone 移动的
4个 配件 苹果手机

使用通用存储库,您只能进行连接,除非您更改通用存储库 class 中代码的实现。

我的建议是将所有数据最初放在一个变量中,然后对其进行操作以获得所需的结果,如下所示:

var data = categoryRepository.GetAll();
List<CategoryVM> result = new List<CategoryVM>();
foreach(var item in data)
{
    if(item.ParentId != null)
    { 
        var parent = data.Where(x=>x.Id == item.ParentId).First();
        result.Add(new CategoryVM()
        {
             Name = item.Name,
             Id = item.Id,
             ParentName = parent.Name
        };
     }
 }
return Result;

记住要有一个名称为 CategoryVM 的视图模型,其中包含最终结果列表中的那些属性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM