C# Error CS8354 – Cannot return ‘this’ by reference.

C# Error

CS8354 – Cannot return ‘this’ by reference.

Reason for the Error & Solution

Cannot return ‘this’ by reference.

A ref argument must be an assignable variable or array element. this is not assignable and cannot be returned by reference.

Example

The following sample generates CS8354:

// CS8354.cs (6,20)

class Program
{
    ref Program M()
    {
        return ref this;
    }
}