Esempio n. 1
0
 public async Task <IActionResult> FaixasEditAsync(Faixas dados)
 {
     try
     {
         var _app = new appFaixas();
         //Chamando camada de aplicação
         return(Ok(await _app.EditAsync(dados)));
     }
     catch (ArgumentException e)
     {
         return(StatusCode((int)HttpStatusCode.InternalServerError, e.Message));
     }
 }
    public static List <Faixas> BuscarFaixaPorId(long id)
    {
        var faixas = new List <Faixas>();

        var uri = ConfigurationManager.AppSettings["DeezerFaixa"].ToString();

        foreach (JToken result in ResponseJsonAPI(String.Format(uri, id)))
        {
            Faixas faixa = result.ToObject <Faixas>();
            faixas.Add(faixa);
        }

        return(faixas);
    }
Esempio n. 3
0
        public async Task <bool> EditAsync(Faixas dados)
        {
            using (var context = new EntityDbContext())
            {
                try
                {
                    var Faixa = await context.Faixasbset.FindAsync(dados.id);

                    Faixa.Cor             = dados.Cor.ToString();
                    Faixa.Aulas_Meta      = dados.Aulas_Meta;
                    Faixa.DataAtualizacao = DateTime.Now;

                    await context.SaveChangesAsync();

                    return(true);
                }
                catch
                {
                    return(false);
                }
            }
        }
Esempio n. 4
0
        public async Task <IActionResult> Create([Bind("ID,Titulo,Genero,FicheiroImg")] Faixas faixa, IFormFile fotoFaixa)
        {
            // **************************************
            // processar a fotografia
            // **************************************
            // vars. auxiliares
            string caminhoCompleto = "";
            bool   haImagem        = false;

            // será q há fotografia?
            //    - uma hipótese possível, seria reenviar os dados para a View e solicitar a adição da imagem
            //    - outra hipótese, será associar ao faixa uma fotografia 'por defeito'
            if (fotoFaixa == null)
            {
                faixa.FicheiroImg = "NoFaixa.png";
            }
            else
            {
                // há ficheiro
                // será o ficheiro uma imagem?
                if (fotoFaixa.ContentType == "image/jpeg" ||
                    fotoFaixa.ContentType == "image/png")
                {
                    // o ficheiro é uma imagem válida
                    // preparar a imagem para ser guardada no disco rígido
                    // e o seu nome associado ao faixa
                    Guid g;
                    g = Guid.NewGuid();
                    string extensao = Path.GetExtension(fotoFaixa.FileName).ToLower();
                    string nome     = g.ToString() + extensao;
                    // onde guardar o ficheiro
                    caminhoCompleto = Path.Combine(_caminho.WebRootPath, "Imagens\\Faixas", nome);
                    // associar o nome do ficheiro ao faixa
                    faixa.FicheiroImg = nome;
                    // assinalar que existe imagem e é preciso guardá-la no disco rígido
                    haImagem = true;
                }
                else
                {
                    // há imagem, mas não é do tipo correto
                    faixa.FicheiroImg = "NoFaixa.png";
                }
            }

            if (ModelState.IsValid)
            {
                try {
                    _context.Add(faixa);
                    await _context.SaveChangesAsync();

                    // se há imagem, vou guardá-la no disco rígido
                    if (haImagem)
                    {
                        using var stream = new FileStream(caminhoCompleto, FileMode.Create);
                        await fotoFaixa.CopyToAsync(stream);
                    }
                    return(RedirectToAction(nameof(Index)));
                }
                catch (Exception) {
                    // se chegar aqui, é pq alguma coisa correu mesmo mal...
                    // o que fazer?
                    // opções a realizar (todas, ou apenas uma...):
                    //   - escrever, no disco do servidor, um log com o erro
                    //   - escrever numa tabela de Erros, na BD, o log do erro
                    //   - enviar o modelo de volta para a View
                    //   - se o erro for corrigível, corrigir o erro
                }
            }
            return(View(faixa));
        }