考虑以下代码:
IEnumerable<string> FooBar()
{
yield return "foo";
yield return "bar";
}
IEnumerable<string> FooBarBaz()
{
foreach(var s in FooBar()) { yield return s; }
yield return "baz";
}
有什么方法可以重构FooBarBaz
来直接产生FooBar()
的所有内容,而不必显式键入foreach
循环?
我想做如下事情,但这当然不是有效的C#:
IEnumerable<string> FooBarBaz()
{
yield return all FooBar();
yield return "baz";
}