Поделиться через


Ошибка компилятора CS1632

Обновлен: Ноябрь 2007

Сообщение об ошибке

Элемент управления не может быть выведен из основной части анонимного метода или лямбда-выражения
Control cannot leave the body of an anonymous method or lambda expression

Эта ошибка возникает, если оператор перехода (break, goto, continue и т. д.) пытается переместить элемент управления из блока анонимного метода. Блок анонимного метода является основной частью функции и для его закрытия требуется оператор return либо необходимо достичь его конца.

В следующем примере возникает ошибка CS1632.

// CS1632.cs
// compile with: /target:library
delegate void MyDelegate();
class MyClass
{
   public void Test()
   {      
      for (int i = 0 ; i < 5 ; i++)
      {
         MyDelegate d = delegate {
            break;   // CS1632
          };        
      }
   }
}