HomeCSharpC# Error CS1626 – Cannot yield a value in the body of a try block with a catch clause

C# Error CS1626 – Cannot yield a value in the body of a try block with a catch clause

C# Error

CS1626 – Cannot yield a value in the body of a try block with a catch clause

Reason for the Error & Solution

Cannot yield a value in the body of a try block with a catch clause

A yield statement is not allowed in a try block if there is a catch clause associated with the try block. To avoid this error, either move the yield statement out of the try/catch/finally block, or remove the catch block.

The following sample generates CS1626:

// CS1626.cs  
using System.Collections;  
  
class C : IEnumerable  
{  
   public IEnumerator GetEnumerator()  
   {  
      try  
      {  
         yield return this;  // CS1626  
      }  
      catch  
      {  
  
      }  
      finally
      {

      }
   }  
}  
  
public class CMain  
{  
   public static void Main() { }  
}  

Leave A Reply

Your email address will not be published. Required fields are marked *

You May Also Like

This C# program calculates and displays an upper triangular matrix based on user input. Problem Statement: The program takes the...
This C# program serves as a demonstration of bitwise operators, which are fundamental operators used for manipulating individual bits in...
This C# program is designed to interchange or swap the columns of a matrix. A matrix is a two-dimensional array...