어떤 이유로 든이 문제를 해결할 수는 없습니다. 목록에서 하나의 문자열을 포함하는 엔티티를 찾으십시오.
우리가 클래스Foo
public class Foo
{
public string Name {get;set;}
}
이 우리가 그들의 일반적인 목록을 말한다. 일반 목록을 검색하고 문자열 목록에서 any를 포함하는 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));
}
같은이 문제는 여기에) 루프 (나에게 최적 느끼지 않는다)와 b) 각 개체가 두 번 이상 나타날 수 있습니다 (이름이 있다면 '롭 StackOverflow의'인 'Rob'이라는 키워드와 'Stackoverflow'라는 키워드가 있음).
나는 Distinct()
이라고 부를 수는 있겠지만, 다시 한번 말하면 최적이라고 느끼지는 않습니다.
내가 잘못 접근하고 있다고 생각합니다. 내가 뭘 잘못하고있는 걸까요?
그래서 간단하게 - 때때로 당신은 단지 지적 할 사람이 필요합니다 깜박이는 명백한 – glosrob