2016-09-21 119 views
0

我得到了SQL中的兩個表,一個是用戶表,另一個是狀態表,我想獲得使用LINQ顯示的最新狀態。LINQ獲取最新狀態

/// User Table// 
userID (Pk) userName telephonenumber 
1    xx1  xxxxxxxx 
2    xx2  xxxxxxxx2 
3    xx3  xxxxxxxx3 
4    xx4  xxxxxxxx4 


statusID(pk) userID statusMessage  createdAt  
    1   2  ddddddddx  2012-09-18 13:30:08 
    2   4  zzzzddddd  2012-09-18 13:30:10 
    3   1  ssswessss  2012-09-18 16:30:10 
    4   2  ddddddddd  2012-09-18 16:30:15 
    5   4  xxxxxweew  2012-09-18 17:30:18 

回答

1

假設Statuses是你的第二個表的名稱,你可以使用:

dbContext.Statuses.OrderBy(a => a.createdAt).Last(); 

你可以添加一些過濾器(例如用戶ID),但它不是在一個問題中指定。


更新1,過濾器通過特定的用戶ID

dbContext.Statuses.Where(a => a.userID = someID) 
        .OrderBy(a => a.createdAt) 
        .Last(); 
+0

@感謝,過濾器通過用戶ID,對特定的用戶名,我想顯示,喜歡usertable用戶ID等於狀態表userID –

+0

@感謝您的時間 –

1

下應該做的:

result.Max(m => m.createdAt) //To get latest record 
result.Min(m => m.createdAt) //To get earlier record