なんらかの理由で、これについて頭を悩ませることはできません。
クラスがあるとしましょうFoo
public class Foo
{
public string Name {get;set;}
}
そして、それらの一般的なリストがあります。一般的なリストを検索して、文字列のリストからいずれかを含むものを選びたいと思いName
ます。
だから何か
var source = GetListOfFoos();//assume a collection of Foo objects
var keywords = GetListOfKeyWords();//assume list/array of strings
var temp = new List<Foo>();
foreach(var keyword in keywords)
{
temp.AddRange(source.Where(x => x.Name.Contains(keyword));
}
ここでのこの問題は、a) ループ (私には最適とは思えません) および b) 各オブジェクトが複数回表示される可能性があります (名前が「Rob StackOverflow」で、キーワード「Rob」とキーワード「Stackoverflow」があった場合)。 .
私は電話をかけることができると思いますが、繰り返しますDistinct()
が、それは最適ではないと感じています.
私はこれに間違って取り組んでいると思います-何が間違っていますか?