When using the auto property initializer and trying to initialize the auto property with a value from method , you might end up with the below error
C# 6.0 – A field initializer cannot reference the non-static field, method, or property.
For example , the below code snippet will give the error.
public class User { public DateTime CreatedDate { get; } = GetCurrentDate(); public DateTime GetCurrentDate() { return DateTime.Now; } }
The reason for the error is that the method GetCurrentDate is NOT marked as static . Setting the method static as shown below will resolve this error.
public class User { public DateTime CreatedDate { get; } = GetCurrentDate(); public static DateTime GetCurrentDate() { return DateTime.Now; } }
1 Comment