2017-06-12 21 views
0

過去2週間で作成されたアイテムのリストを取得しようとしています。私は14項目を取得することができますが、私は14日から項目を欲しいです。私のコードは以下のようになります。私はこの言語を初めて使っていて、私はそれを修正したと思ったが、まだ問題がある。フィルタリングは `WHERE`を使用して実行されます。特定の期間からデータを取得する

public ActionResult SolaceHistory() 
    { 

     var model = new SolaceHistoryList(); 
     model.Statuses = OnlineGivingContext.log_SolaceStatus.OrderByDescending(s => s.DateCreated).Take(14).ToList(); 
     return View(model); 
    } 
+2

ヒントを解決することができました。あなたが本当にフィルタリングしようとしていることを考えてみてください。より大きなヒント: '' cutoff "dateをどのように構築して' 's.DateCreated> = cutoffDate''を見つけることができるか考えてみてください... –

+2

' .Where(x => x.DateCreated> = start) 'どこで' start 'おそらく' DateTime.UtcNow.AddDays(-14) 'でしょうか? –

+3

[日付間のLinqクエリの可能な重複](https://stackoverflow.com/questions/30662009/linq-query-between-dates) – Liam

答えて

0

機能下記の使用

public ActionResult SolaceHistory() 
    { 
var Criteria=DateTime.Now.AddDays(-14); 
     var model = new SolaceHistoryList(); 
     model.Statuses = OnlineGivingContext.log_SolaceStatus.OrderByDescending(s => s.DateCreated.Date >= Criteria.Date).ToList(); 
     return View(model); 
    } 
+0

これを以前使ってみましたが、aSystem.NotSupportedExceptionが返されました。 メッセージ=指定された型メンバー 'Date'は、LINQ to Entitiesではサポートされていません。初期化子、エンティティメンバー、エンティティナビゲーションプロパティのみがサポートされています。 Source = <例外ソースを評価できません> StackTrace: <例外スタックトレースを評価できません> – Elias0852

+0

syetem.linq名前空間を使用していますか? – NIts577

0
 { 
     var Criteria = DateTime.Today.AddDays(-14); 
     var model = new SolaceHistoryList(); 
     model.Statuses = OnlineGivingContext.log_SolaceStatus 
      .Where(st => st.DateCreated >= Criteria). 
      OrderByDescending(s => s.DateCreated).ToList(); 
     return View(model); 
    } 

をapperciatedされるだろうすべてのヘルプは私の問題

関連する問題