2016-09-21 3 views
0

私はSQLで2つのテーブルを持って、1つはユーザテーブルで、もう1つはステータステーブルです。私はLINQを使って表示する最新のステータスを取得したいです。LINQ最新の状態を取得

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

あなたは、いくつかのフィルタ(例:ユーザID)を追加することができますが、それは問題で指定されていません。

/// 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は、2番目のテーブルの名前であると仮定すると、あなたは使用することができます。


アップデート1、特定のユーザーIDによってフィルタ以下が何をすべき

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

は、特定のユーザーIDのために、私は、表示したいですあなたの時間のために、ステータステーブルuserID –

+0

@thanksに等しいusertableのuserIDを好む –

1

:おかげで、ユーザーIDによってフィルタ@

result.Max(m => m.createdAt) //To get latest record 
result.Min(m => m.createdAt) //To get earlier record 
関連する問題