2012-12-19 30 views
0

我的MyObject的列表(讓列表名稱是MYLIST)Linq的分組項

每個myobject具有性能

SiteName , 
PersonName , 
numberOfClicks 

MYLIST我得的列表網站名稱PersonName,totalnumberOfClicks 即一個siteName one PersonName and sum在現場

這怎麼是可能的LINQ

+1

你的意思是你想要一個不同的'PersonName'的列表?或者不同的'SiteName + PersonName'對?或者每個'PersonName'的'numberOfClicks'總和? – Groo

+0

不同的SiteName + PersonName對 –

+0

好吧,那麼你通過@lazyberezovsky [below](http://stackoverflow.com/a/13948342/69809)得到了答案。 – Groo

回答

4
var query = from x in Mylist 
      group x by new { x.SiteName, x.PersonName } into g 
      select new { 
       g.Key.SiteName, 
       g.Key.PersonName, 
       totalnumberOfClicks = g.Sum(i => i.numberOfClicks) 
      }; 

查詢將與性質網站名稱,PERSONNAME, totalnumberOfClicks返回匿名對象的IEnumerable的numberOfClicks這個perticlaur人。我們使用PascalCase作爲屬性命名,而camelCase使用變量命名(即TotalNumberOfClicks,NumberOfClicks和myList)。