static void Main(string[] args)
{
IEnumerator<int> iterator = GetIEnumerator();
Console.WriteLine("Start");
while(iterator.MoveNext())
{
Console.WriteLine(iterator.Current);
}
Console.WriteLine("end");
Console.ReadLine();
}
public static IEnumerator<int> GetIEnumerator()
{
try
{
Console.WriteLine("CreateIEnumerator");
for (int i = 1; i < 10; i++)
{
Console.WriteLine("about to yield " + i);
if (i >= 8)
{
yield break;
}
if (i >= 5)
{
yield return i * 2;
}
else