Error del compilador CS1626
Actualización: noviembre 2007
Mensaje de error
No se puede proporcionar un valor en el cuerpo de un bloque try con una cláusula catch
Cannot yield a value in the body of a try block with a catch clause
No se permite incluir una instrucción yield en un bloque try si hay una cláusula catch asociada a él. Para evitar este error, ponga la instrucción yield fuera de la cláusula catch.
El código siguiente genera el error CS1626:
// CS1626.cs
using System.Collections;
class C : IEnumerable
{
public IEnumerator GetEnumerator()
{
try
{
yield return this; // CS1626
}
catch
{
}
}
}
public class CMain
{
public static void Main() { }
}