public void Add(Order order)
 {
     var orderState = new Order.ToState().Build(order);
     using (var connection = new SqlConnection(SqlConnectionLocator.LocalhostSqlExpress())) {
         connection.Execute(SqlQueries.InsertOrderQuery, orderState);
         connection.Execute(SqlQueries.InsertOrderLineQuery, orderState.Lines);
     }
 }
 public void Add(Order order)
 {
     var orderState = new Order.ToState().Build(order);
     using (var dataContext = new DataContext()) {
         dataContext.Set<OrderState>().Add(orderState);
         dataContext.SaveChanges();
     }
 }
 public void Update(Order order)
 {
     var orderState = new Order.ToState().Build(order);
     using (var dataContext = new DataContext()) {
         dataContext.Entry(orderState).State = EntityState.Modified;
         orderState.Lines.ForEach(x => dataContext.Entry(x).State = EntityState.Added);
         dataContext.SaveChanges();
     }
 }