using Microsoft.EntityFrameworkCore;
using Microsoft.Data.SqlClient;
using System.Collections.Generic;
public static void Main()
using (var context = new EntityContext())
context.Database.EnsureCreated();
var orderType = OrderType.Sales;
var orderDate = new DateTime(2,2,2);
var order = new Order { Type = orderType, Date = orderDate };
Console.WriteLine($"Order type should be {orderType} but it's {order.Type}");
Console.WriteLine($"Order date should be {orderDate} and it's {order.Date}");
public class EntityContext : DbContext
protected override void OnConfiguring(DbContextOptionsBuilder builder)
var connectionString = FiddleHelper.GetConnectionStringSqlServer();
builder.UseSqlServer(new SqlConnection(connectionString))
.EnableSensitiveDataLogging();
base.OnConfiguring(builder);
protected override void OnModelCreating(ModelBuilder builder)
.HasDefaultValue(new DateTime(3,3,3));
.HasDefaultValue(OrderType.Purchase);
public DbSet<Order> Orders {get; set;}
public int Id { get; set; }
public string Description { get; set; }
public decimal Amount { get; set; }
public DateTime Date { get; set; }
public OrderType Type { get; set; }