質問

I have 2 tables like below.

For comments to vote

VoteId      VoteValue  UserId CommentId DateAdded
1              1          1      1      10/11/2013 
2              1          5      1      10/14/2013
3              1          9      2      09/08/2013
4              1          11     3      01/03/2014 

For users that take point values

PointId      Date        PointValue UserId
 1        10/11/2013      1         1     
 2        10/14/2013      1         5
 3        09/08/2013      1         9
 4        01/03/2014      1         11

I should find 10 users that most taken votes each month in all comments. Firstly I try to write LINQ like that;

    var object = (db.Comments.
Where(c => c.ApplicationUser.Id == comment.ApplicationUser.Id).
FirstOrDefault()).ToList();

I can't use sum and add points to my table. Any helps? I hope it's clear.

役に立ちましたか?

解決

First you should extract mounth from datetime value, then group by month descending and also take sum of all coments and use Take(10) at the end.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top