我在类中有一个属性,我需要迭代关系中所有可能的不同 ID。
我属于一个用户,该用户属于一家公司。公司有许多解决方案,每个解决方案都有许多“解决方案门户”。我想要的是数据库中“SolutionPortals”(SolutionPortal.PortalID) 中所有不同“PortalId”的列表。
我一生都无法将其作为一个列表。我不断得到:
var solutionIds = from s in this.Company.Solutions.Select(s=>s.SolutionPortals)
select s.Select(sp=> sp.PortalID);
当然这是有道理的,因为有一个解决方案列表和一个解决方案门户列表,但我需要将 IDS 选择到它们自己的列表中。
IEnumerable<IEnumerable<int>> // <-- Don't want this
IEnumerable<int> // <-- I want this
任何帮助将非常感激。
谢谢/
最佳答案
SelectMany
是这里的关键:
var solutionIds = this.Company
.Solutions
.SelectMany(s=>s.SolutionPortals)
.Select(sp => sp.PortalId)
.Distinct();
关于c# - LinqToSql - 从嵌套列表中获取不同 ID 的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1094813/