【发布时间】:2021-02-09 22:23:12
【问题描述】:
我被困在字典初始化中,我需要获取字典,其中键是项目内部列表元素,值是这些项目。我很难解释,所以这里举个例子。
有结构
public class Process
{
public List<Product> Products { get; set; }
}
public class Product
{
public int Id { get; set; }
}
还有一些数据:
Process 1
Product 1
Product 2
Process 2
Product 2
Product 3
最后一个字典应该是这样的:
Dictionary<Product, List<Process>>()
{
{ Product1, List<Process> { Process1 },
{ Product2, List<Process> { Process1, Process2 },
{ Product3, List<Process> { Process2 } }
}
所以,不知何故,我需要从每个流程中获取唯一键 (Product.Id),并将值设置为流程,每个产品都包含在其中。
我尝试了一些 linq Select 的产品集合,但它创建了一个 Enumerable,所以我不能将它用作键。而且我没有找到任何描述相同问题的问题。
【问题讨论】:
标签: c# linq dictionary