after group by in LINQ how to get to nested values using select
http://img51.imageshack.us/i/linqquestion.png/
Everything is in the picture.
I just want to get to one of the highlighted values, for example size.
code from picture :
var queryGroupDuplic开发者_开发问答ates = from dlc in listDLC
from song in dlc.songs
group dlc by song.shortname into duplicates
where duplicates.Count() > 1
select duplicates;
queryGroupDuplicates.Dump();
queryGroupDuplicates.First().First().size
So you just want to select those fields from any one of the items in the group? Well your picture shows the contents of what in the groups, so pick one of the items in the group and select the fields you want (let's pick the first one's values).
var queryGroupDuplicates =
from dlc in listDLC
from song in dlc.songs
group dlc by song.shortname into duplicates
where duplicates.Count() > 1
let someItem = duplicates.First()
select new
{
someItem.fileName,
someItem.gameID,
someItem.size,
someItem.errorsDLC,
someItem.packName,
};
var queryGroupDuplicates = from dlc in listDLC
from song in dlc.songs
group dlc by song.shortname into duplicates
where duplicates.Count() > 1
select new
{
duplicatName = duplicates.Key,
DLCfiles = from DLCfile in duplicates
select new {DLCfileName = DLCfile.fileName, packName = DLCfile.packName}
};
This code produces what's in the picture below: http://img846.imageshack.us/i/linqanswer.png/
MSDN - i got idea after seeing this, but thanks for your fast response anyway.
精彩评论