私は次のアーキテクチャを持っています:
public class Element
{
public uint Id { get; set; }
public ICollection<ElementDetails> elementDetails { get; set; }
}
public class ElementDetails
{
public string ElementTitle { get; set; }
public string Content { get; set; }
}
何百ものList<Element> someList
要素が含まれています。特定のテキスト (「シード」と呼びます) を含む ElementTitle (文字列) のリストを取得しようとしています。私が達成したいのは、タイプアヘッドです。これが私の試みです:
List<Element> suggestedElements = someList.Where(s => s.elementDetails.Any(ss => ss.ElementTitle.Contains(seed))).ToList();
List<string> suggestions = suggestedElements .SelectMany(t => t.elementDetails.Select(x => x.ElementTitle)).ToList() }); // contains all ElementTitle, including those ElementTitle that don't contain the "seed"...
シードを含まない要素を取り除くにはどうすればよいですか?