C# Linq-按其集合复制记录

C# Linq-按其集合复制记录,c#,linq,C#,Linq,假设我的模型看起来像这样 public class OrganizationDTO { public int Id { get; set; } public string Name { get; set; } public List<StorageDTO> Storages { get; set; } = new List<StorageDTO>(); } public class StorageDTO { public int Id {

假设我的模型看起来像这样

public class OrganizationDTO
{
    public int Id { get; set; }
    public string Name { get; set; }
    public List<StorageDTO> Storages { get; set; } = new List<StorageDTO>();
}

public class StorageDTO
{
    public int Id { get; set; }
    public string Name { get; set; }
    public List<OrganizationDTO> Organizations { get; set; } = new List<OrganizationDTO>();
}
public class OrganizationDTO
{
公共int Id{get;set;}
公共字符串名称{get;set;}
公共列表存储{get;set;}=new List();
}
公共类存储DTO
{
公共int Id{get;set;}
公共字符串名称{get;set;}
公共列表组织{get;set;}=new List();
}
组织可能有多个存储,所以基本上我希望在表中复制每个存储的组织。我想在下面的表格记录中显示

组织1 |存储1

组织1 |存储2

组织1 |存储3

组织1 |存储4

组织2 |存储1

组织2 |存储2

我试图按存储集合对它们进行分组,但它没有像我希望的那样复制我的记录

 var result = Context.Storages
    .SelectMany(org => org.Organizations)
    .GroupBy(org => org)
    .Select(grouping => grouping.FirstOrDefault())
    .OrderBy(org => org.Name)
    .ProjectTo<SomeDTO>();
var result=Context.Storages
.SelectMany(org=>org.Organizations)
.GroupBy(org=>org)
.Select(grouping=>grouping.FirstOrDefault())
.OrderBy(org=>org.Name)
.ProjectTo();

看起来你只是想平淡关系

var query =
  from storage in Context.Storages
  from org in storage.Organizations
  select new {Storage = storage, Organization = org };

var result = query
  .OrderBy(row => row.Organization.Name)
  .ProjectTo<SomeDTO>();
var查询=
从Context.Storages中的存储
从storage.Organizations中的组织
选择新建{Storage=Storage,Organization=org};
var结果=查询
.OrderBy(row=>row.Organization.Name)
.ProjectTo();

看起来你只是想平淡关系

var query =
  from storage in Context.Storages
  from org in storage.Organizations
  select new {Storage = storage, Organization = org };

var result = query
  .OrderBy(row => row.Organization.Name)
  .ProjectTo<SomeDTO>();
var查询=
从Context.Storages中的存储
从storage.Organizations中的组织
选择新建{Storage=Storage,Organization=org};
var结果=查询
.OrderBy(row=>row.Organization.Name)
.ProjectTo();
“它不起作用”不是正确的问题描述。请阅读,“它不起作用”不是一个恰当的问题描述。阅读