Initializers via Expression Auto Properties in C# 6.0

C# 6.0 Features Series

In one of the previous blog post , i shared an interesting feature in C# 6.0 that demonstrates How to Initialize a Read-Only Auto Properties in C# 6.0 ? .

In this blog post , I will share an extension of the same feature where the Initializers for the auto properties can be any expression including the return value of a method.

Initializers via Expression Auto Properties in C# 6.0

Below is a code snippet demonstrating the usage of the return value of the method to initialize the auto properties in C# 6.0

public class Employee
{
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public DateTime ModifiedDate { get;  } = GetCurrentDateTime();
        public static DateTime GetCurrentDateTime()
        {
            return DateTime.Now;
        }
}

Note that the Method should be static or else you will receive the below error .

Error    CS0236    A field initializer cannot reference the non-static field, method, or property ‘Employee.GetCurrentDateTime()’

image

Leave a Reply