예제 #1
0
        public async Task <IActionResult> Create([Bind("id,item,stock,description,price,foto")] Product product, IFormFile fotoProd)
        {
            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 veterinário uma fotografia 'por defeito'
            if (fotoProd == null)
            {
                product.foto = "noVet.png";
            }
            else
            {
                // há ficheiro
                // será o ficheiro uma imagem?
                if (fotoProd.ContentType == "image/jpeg" ||
                    fotoProd.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 Veterinario
                    Guid g;
                    g = Guid.NewGuid();
                    string extensao = Path.GetExtension(fotoProd.FileName).ToLower();
                    string nome     = g.ToString() + extensao;
                    // onde guardar o ficheiro
                    caminhoCompleto = Path.Combine(_caminho.WebRootPath, "Imagens\\Vets", nome);
                    // associar o nome do ficheiro ao Veterinário
                    product.foto = nome;
                    // assinalar que existe imagem e é preciso guardá-la no disco rígido
                    haImagem = true;
                }
                else
                {
                    // há imagem, mas não é do tipo correto
                    product.foto = "noVet.png";
                }
            }
            if (ModelState.IsValid)
            {
                try
                {
                    _context.Add(product);
                    await _context.SaveChangesAsync();

                    // se há imagem, vou guardá-la no disco rígido
                    if (haImagem)
                    {
                        using var stream = new FileStream(caminhoCompleto, FileMode.Create);
                        await fotoProd.CopyToAsync(stream);
                    }
                    return(RedirectToAction(nameof(Index)));
                }
                catch (Exception) { }
            }
            return(View(product));
        }
예제 #2
0
        public async Task <IActionResult> Create([Bind("id,user_id,pay_id,ordered,shipped,ship_to,status,total")] Order order)
        {
            if (ModelState.IsValid)
            {
                _context.Add(order);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(order));
        }
예제 #3
0
        public async Task <IActionResult> Create([Bind("ID,prod_id,order_id,quant,total")] ShoppingCart shoppingCart)
        {
            if (ModelState.IsValid)
            {
                _context.Add(shoppingCart);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(shoppingCart));
        }
예제 #4
0
        public async Task <IActionResult> Create([Bind("id,role,username,nome,email,address,Inc_date")] Users users)
        {
            if (ModelState.IsValid)
            {
                _context.Add(users);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(users));
        }
예제 #5
0
        public async Task <IActionResult> Create([Bind("id,total,details,type")] Payment payment)
        {
            if (ModelState.IsValid)
            {
                _context.Add(payment);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(payment));
        }