起初,我有一個項目清單:LINQ:轉換分組列表進入新的名單
List<Item> mySourceList;
哪個項目是:
項目類:
public class Item
{
public DateTime Date
{
get;
set;
}
public string ProviderID
{
get;
set;
}
public List<AnotherClass> listOfitems
{
get;
set;
}
public byte[] Img
{
get;
set;
}
// Other properties
public long GroupID
{
get;
set;
}
}
我需要組mySourceList的ProviderID和日期,所以我做如下:
var grp = mySourceList .GroupBy(e => new { e.ProviderID, e.Date });
然後我在這個分組名單進行一些opertions:
int groupId = 1;
foreach (var group in grp)
{
int id = group.Count() > 1 ? groupId++ : 0;
// Loop through each item within group
foreach (var item in group)
item.GroupID = id;
}
最後,我想mySourceList列表轉換成一個新的,新人們必須再次列出,所以我下面想,但它不工作:
List<Item> myDestList = grp.ToList<Item>();
我該如何轉換爲List?
我使用Visual Studio 2008和.NET框架3.5 SP1
最後我有循環的令牌優勢,請參閱我的答案。無論如何,你的解決方案完美工作,我喜歡它。 – user1624552