私はresultsというモデルのリストを持っています。この特定の文字列を含む結果リストからそれらの値を取得する必要があります。リストに特定の文字列が含まれているかどうかを調べるには
List<Search> results = new List<Search>();
results = db.Users.Select(f => new Search{ Name = f.Name, Type = f.OrganizationType.Name, County = f.County.Name }).ToList();
results = results.Where(w => (model.Name == null || w.Name.Contains(model.Name))).ToList();
最初の結果クエリは5000行を返しますが、もう一つは、私は2番目のクエリでやろうとしていますどのような0を返します。名前がnullであるか、名前が文字列の一部が含まれている場合、それを追加した場合であります結果リストに追加します。 何か不足していますか?
私は基本的に私はmodel.Nameの値をチェックして、それが適切に表示されます。 Check if a string within a list contains a specific string with Linqのように同じことを行うように頼まリンクのカップルをチェックしました
Model.Name = nullの検索文字列がない場合はクエリが機能します。すべてのレコードを取得します。
その後、すべての行をRAMにフェッチしてからフィルタリングすることをお勧めします。あなたのSQLサーバは、CPU /ネットワークの負荷、オーバーヘッド、ラムの使用量を減らすために既に仕事をしているはずです。 – fubo
結果に実際に 'model.Name'が含まれていることをどのように知っていますか?それはどこにありますか?私たちは確信することはできません...また、あなたはケーシングの問題に対処していません。 'Aaron'は' aaron'と同じではありません。 –
'モデル'フィールドは誰ですか、 '検索'変数ですか? – octavioccl