C# Compiler Error
CS0236 – A field initializer cannot reference the non-static field, method, or property ‘name’
Reason for the Error
You will receive this error in your C# program when you are trying to initialize a member or variable using other instance fields outside of method.
For example, try to compile the below code snippet.
namespace DeveloperPubNamespace
{
public class Employee
{
public string SurName = "";
public string LastName = SurName;
}
class Program
{
public static void Main()
{
}
}
}This program will result with the C# error code CS0236 because the instance field LastName is initialized directly (outside of method) using another instance field SurName.
Error CS0236 A field initializer cannot reference the non-static field, method, or property ‘Employee.SurName’ DeveloperPublish C:\Users\SenthilBalu\source\repos\ConsoleApp3\ConsoleApp3\Program.cs 6 Active

Solution
To fix the error code CS0236 in C#, you should consider initializing the field either inside a method or using the class’s constructor.
namespace DeveloperPubNamespace
{
public class Employee
{
public string SurName = "";
public string LastName;
public Employee()
{
LastName = SurName;
}
}
class Program
{
public static void Main()
{
}
}
}