如何根据集合的已知元素提取IEnumerable的一部分?

Tim*_*ong 5 c# linq

我有一个集合,特别是一个IList<T>.我知道集合中的两个元素,startElementendElement.

是否有一个LINQ查询将从返回枚举startElementendElement,包容性?

我想过使用sequence.SkipWhile(p=>p!=startElement).TakeWhile(q=>q!=endElement)但是错过了最后一个元素......

Gle*_*mas 1

我能想到的最好的是:

var subSection = TestData.SkipWhile(p => p != startElement).ToList();
var result = subSection.Take(subSection.IndexOf(endElement) + 1);
Run Code Online (Sandbox Code Playgroud)