public async Task <Guid> Create(Domain.AggregateRoot.Customer customer)
        {
            var customerId = Guid.NewGuid();

            using (var db = _factory.GetConnection())
            {
                try
                {
                    await db.ExecuteAsync(CustomerRepositorySql.Create, new
                    {
                        Id        = customerId,
                        AccountId = customer.Account.Id,
                        Email     = customer.Email,
                        Firstname = customer.Firstname,
                        Lastname  = customer.Lastname,
                        Balance   = customer.Account.Balance,
                    });
                }
                catch (Exception exception)
                {
                    Console.WriteLine(exception);
                    throw;
                }
            }
            return(customerId);
        }
 public async Task Update(Domain.AggregateRoot.Customer customer)
 {
     using (var db = _factory.GetConnection())
     {
         await db.ExecuteAsync(CustomerRepositorySql.Update, new
         {
             Id        = customer.Id,
             Email     = customer.Email,
             Firstname = customer.Firstname,
             Lastname  = customer.Lastname
         });
     }
 }