public IHttpActionResult CadastrarAplicacao([FromBody] CadastroAtualizacaoDto dadosParaCadastro)
        {
            using (var sessao = new GDATransaction())
            {
                try
                {
                    var validacao = this.ValidarCadastroAplicacao(sessao, dadosParaCadastro);

                    if (validacao != null)
                    {
                        return(validacao);
                    }

                    var aplicacao = new ConverterCadastroAtualizacaoParaAplicacao(dadosParaCadastro)
                                    .ConverterParaAplicacao();

                    sessao.BeginTransaction();

                    var idAplicacao = EtiquetaAplicacaoDAO.Instance.Insert(sessao, aplicacao);
                    sessao.Commit();

                    return(this.Criado($"Aplicação de etiqueta {idAplicacao} inserida com sucesso!", idAplicacao));
                }
                catch (Exception ex)
                {
                    sessao.Rollback();
                    return(this.ErroValidacao($"Erro ao inserir aplicação.", ex));
                }
            }
        }
        public IHttpActionResult AlterarAplicacao(int id, [FromBody] CadastroAtualizacaoDto dadosParaAlteracao)
        {
            using (var sessao = new GDATransaction())
            {
                try
                {
                    var validacao = this.ValidarAtualizacaoAplicacao(sessao, id, dadosParaAlteracao);

                    if (validacao != null)
                    {
                        return(validacao);
                    }

                    var aplicacao = EtiquetaAplicacaoDAO.Instance.GetElementByPrimaryKey(sessao, id);

                    if (aplicacao == null)
                    {
                        return(this.NaoEncontrado($"Aplicação de etiqueta {id} não encontrada."));
                    }

                    aplicacao = new ConverterCadastroAtualizacaoParaAplicacao(dadosParaAlteracao, aplicacao)
                                .ConverterParaAplicacao();

                    sessao.BeginTransaction();

                    EtiquetaAplicacaoDAO.Instance.Update(sessao, aplicacao);
                    sessao.Commit();

                    return(this.Aceito($"Aplicação de etiqueta {id} atualizada com sucesso!"));
                }
                catch (Exception ex)
                {
                    sessao.Rollback();
                    return(this.ErroValidacao($"Erro ao atualizar aplicação.", ex));
                }
            }
        }