2017-03-02 2 views
-5

私はC#とASP.NETの新機能です。現在のプロジェクトから拡張したいソースコードをいくつか持っています。ToListにwhereフィルタを追加する方法#

サイト内の情報のソースが格納されている(頻繁に変更されるため)バックグラウンドで実行されるデータベースを持つウェブサイト。これまでのメニューバーでは1セグメントしかなかったので、すべてのカテゴリをロードしました: List<Category> categories = (from x in db.Categories select x).ToList();

しかし、ここで私は特定のセグメントにフィルタをかけることができますか?このセグメントを外部キーで定義しましたが、where db.Categories.SID = 1を追加するのと同じくらい簡単ですか?

+0

しかし、その二重の等号ですが、linqクエリのfromセクションとselectセクションの間に入ります。 'var categories = db.Categories.Where(c => c.SID == 1).ToList();'は、より簡単な形式でクエリを書く別の方法です。 – asawyer

+0

試しましたか? 'from x from db.Categories x.SID == 1 select x' – Equalsk

+4

MicrosoftはLINQを文書化しているので、それについて調べるには、文書をチェックすることがまず最初にやるべきことです。 – mason

答えて

1
List<Category> categories = (from x in db.Categories where x.SID == 1 select x).ToList(); 

または

List<Category> categories = db.Categories.Where(c => c.SID == 1).ToList(); 
0

あなたがToListメソッド()を呼び出す前に、フィルタは、LINQの式に追加することができますザ・。 これを試してください:

List<Category> categories = (from x in db.Categories where x.SID == 1 select x).ToList(); 
関連する問題