Linq分组依据3个集合

xe55xuns  于 2022-12-06  发布在  其他
关注(0)|答案(1)|浏览(158)

我有以下实体,它允许一个实体有多个服务和贸易伙伴。这些集合中的每一个都可以有一个应用程序列表。

public Entity Entity   { get; set; }

        public Int64? ServiceId { get; set; }
        public Service Service { get; set; }

        public Int64 TradingPartnerId { get; set; }
        public Entity TradingPartner { get; set; }

        public List<Application.Application> FrontDoorApplications { get; set; }

如何获得一组嵌套的
实体、其服务、其交易伙伴,最后是应用程序。例如:

Entity 1
    Trading Partner 1    
         Service A
            Application 1
            Application 2
         Service B    
Entity 1
     Trading Partner 2

         Service A
         Service B
mccptt67

mccptt671#

如果我的理解正确的话,那么您应该有四个单独的类,分别对应于您描述的四个实体(*)类型。
如果是这样的话,那么每个实体类都需要有指向相关数据的导航链接,包括子链接和父链接。
比如......

public class TradingPartner {
  // other properties omitted
  public List<Service> Services {get; set; }
}

public class Service {
  // other properties omitted
  public TradingPartner TradingPartner { get; set; }
}

当然,这是假设我理解了你的问题,但是考虑到你发布的代码甚至不是一个完整的类,更不用说四个类了,我可能是错的。
如果这没有帮助,请澄清您的代码。
(*)顺便说一句,Entity是一个非常糟糕的实体名称,因为它是非常通用的,而不是描述你正在建模的具体事物。它还增加了描述你的模型作为一个整体时的混乱,因为“实体”通常在那个上下文中使用。

相关问题