迭代对象并通过C#mvc创建具有组的新对象

时间:2019-07-17 21:39:57

标签: c# linq asp.net-mvc-viewmodel

我如何遍历对象并在C#中创建一个新对象 我有一个视图模型,例如:

pViewModel  {
public itemFullName {get;set;}
public Item Item{get;set;}
}
public Item{
public int itemId{get;set;}
}

我想在找到匹配的全名但ID不同之后创建一个新对象 因此,我的新对象中将包含一个itemFullName,item.itemid(前一个列表中所有项目的管道分隔值)列表。

任何帮助都会很棒。 谢谢

1 个答案:

答案 0 :(得分:1)

听起来您想按itemFullName对模型列表进行分组。这是创建匿名类型对象的方法。

var itemsAndIds = list
    .GroupBy(m => m.itemFullName, m => m.Item.itemId)
    .Select(g => new {ItemFullName = g.Key, ItemIds = string.Join("|", g)})