public HttpResponseMessage Post([FromBody] ClienteViewModel viewModel)
        {
            var nomeCliente     = Nome.Criar(viewModel.PrimeiroNome, viewModel.SobreNome);
            var emailCliente    = Email.Criar(viewModel.EmailPrincipal);
            var enderecoCliente = Endereco.Criar(viewModel.Logradouro, viewModel.Bairro,
                                                 viewModel.Cidade, viewModel.Estado, viewModel.Cep);
            var cpfCliente = Cpf.Criar(viewModel.Cpf);

            var telefoneResidencialCliente = Telefone.Criar(viewModel.DDDTelefoneResidencial,
                                                            viewModel.TelefoneResidencial);
            var celularCliente    = Telefone.Criar(viewModel.DDDCelular, viewModel.Celular);
            var telefoneComercial = Telefone.Criar(viewModel.DDDTelefoneResidencial,
                                                   viewModel.TelefoneComercial);

            DominioResultante resultante = DominioResultante.CombinarDominios(nomeCliente,
                                                                              emailCliente, enderecoCliente, cpfCliente, telefoneResidencialCliente,
                                                                              telefoneComercial, celularCliente);

            if (resultante.Falhou)
            {
                return(Erro(resultante.MensagemDeErro));
            }

            var agendaContatos = AgendaTelefonica.Criar(telefoneResidencialCliente.Objeto,
                                                        celularCliente.Objeto, telefoneComercial.Objeto);

            var cliente = new Cliente(Guid.NewGuid(), nomeCliente.Objeto, emailCliente.Objeto,
                                      enderecoCliente.Objeto, cpfCliente.Objeto, agendaContatos.Objeto);

            //INTERAÇÃO COM BANCO DE DADOS.

            return(Ok());
        }