public ActionResult Detail(CustomerView customerView)
        {
            ModifyCustomerRequest request = new ModifyCustomerRequest();

            request.CustomerIdentityToken = _formsAuthentication.GetAuthenticationToken();
            request.Email = customerView.Email;
            request.FirstName = customerView.FirstName;
            request.SecondName = customerView.SecondName;

            ModifyCustomerResponse response = _customerService.ModifyCustomer(request);

            CustomerDetailView customerDetailView = new CustomerDetailView();

            customerDetailView.Customer = response.Customer;
            customerDetailView.BasketSummary = base.GetBasketSummaryView();

            return View(customerDetailView);
        }
        public ModifyCustomerResponse ModifyCustomer(ModifyCustomerRequest request)
        {
            ModifyCustomerResponse response = new ModifyCustomerResponse();

            Customer customer = _customerRepository
                                         .FindBy(request.CustomerIdentityToken);

            customer.FirstName = request.FirstName;
            customer.SecondName = request.SecondName;
            customer.Email = request.Email;

            ThrowExceptionIfCustomerIsInvalid(customer);

            _customerRepository.Save(customer);
            _uow.Commit();

            response.Customer = customer.ConvertToCustomerDetailView();

            return response;
        }