I would like to solve the problem in the level of Model properties.
I recommend following standards patterns and practices and creating a table constraint as illustrated in the reference documentation.
However, if you really need to do this in C# then set the value in the class constructor.
public class DefaultDemo
{
public DefaultDemo()
{
DateCreated = DateTime.Now;
}
public DateTime DateCreated { get; set; }
}
Constructors (C# programming guide)
Or assign the value.
public DateTime? DateCreated { get; set; } = DateTime.Now;
If your logic has a CreateDate to assign you can simply assign the date to override the default set in code.