intHi,LINQ to SQL,獲取給定ID的最新記錄
對於LINQ來說很新穎。
我有一個額定值表。
用戶添加一組實體的評分 可以爲每個用戶的實體設置多個評分。
例如,假設實體是一輛汽車。該車在外觀和性能上評分。用戶可以對給定車輛的外觀和性能進行多次評估。所以,我的表看起來像這樣(分級字段是不是一個標識列,它是對1的比例爲int - 10):
ReviewID UserID EntityID CatID Rating Body DateSubmitted
1 3 6 1 7 "drives great" 8/01/2010 02:36:28 PM
2 3 6 2 8 "looks great" 8/01/2010 02:36:28 PM
3 3 6 1 2 "broke down" 8/18/2010 11:39:58 PM
4 3 6 2 1 "paint flaked off" 8/18/2010 11:39:58 PM
現在,我已經在那裏我提供用戶名一個輔助方法和EntityID和我想返回最新一組評級(包含評級類別的ViewModel)。
public static IQueryable<RatingViewModel> GetRatingViewModel(int EntityID, int UserID)
{
DB _db = new DB();
var a =
from rating in _db.Ratings
join ratingCat in _db.RatingCategories
on rating.RatingCategoryID equals ratingCat.RatingCategoryID
where rating.UserID == UserID
&& rating.EntityID == EntityID
select new RatingViewModel
{
Rater = rating.User,
RaterRating = rating,
RatingCategory = ratingCat
};
return a;
}
什麼樣的「其中」或「按組」或「按順序」的我需要添加只搶到最新的一組評定爲給定的用戶名和ENTITYID的?
謝謝!
這工作,八九不離十。如果我在你寫的時候添加.Take(10),我會得到一個錯誤,說我的視圖模型沒有包含'Take'的定義。但是我可以放棄'.Take(10)',然後寫var b = a.Take(10);並完成工作。 – johnnycakes 2010-08-21 21:09:02