public async Task <IActionResult> AddImagePost(int id) { if (!_context.posilki.Any(t => t.id_posilku == id)) { ViewBag.Message = "Nie ma takiego posilku"; ViewBag.meal = false; return(View("AddImage")); } var meal = _context.posilki.FirstOrDefault(t => t.id_posilku == id); if (meal.id_uzytkownika != int.Parse(User.Identity.GetUserId())) { return(RedirectToAction("Details", new { id = meal.id_posilku })); } ViewBag.Message = ""; ViewBag.meal = true; var file = Request.Form.Files.Count != 0 ? Request.Form.Files[0] : null; if (file == null) { ViewBag.Message = "Nie wybrano obrazu do przesłania"; return(View("AddImage")); } ObrazyPosilku image = new ObrazyPosilku(); image.id_posilku = id; MemoryStream memeoryStream = new MemoryStream(); file.CopyTo(memeoryStream); image.obraz = memeoryStream.ToArray(); memeoryStream.Close(); memeoryStream.Dispose(); _context.obrazyPosilkow.Add(image); _context.SaveChanges(); ViewBag.Message = "Obraz został dodany"; return(View("AddImage")); }
public async Task <IActionResult> AddImagePost(int id) { if (!_context.posilki.Any(t => t.id_posilku == id)) { ViewBag.Message = "Nie ma takiego posilku"; ViewBag.meal = false; return(View("AddImage")); } var meal = _context.posilki.FirstOrDefault(t => t.id_posilku == id); if (meal.id_uzytkownika != int.Parse(User.Identity.GetUserId())) { return(RedirectToAction("Details", new { id = meal.id_posilku })); } ViewBag.Message = ""; ViewBag.meal = false; var file = Request.Form.Files.Count != 0 ? Request.Form.Files[0] : null; if (file == null) { ViewBag.Message = "Nie wybrano obrazu do przesłania"; return(View("AddImage")); } String fileExtension = Path.GetExtension(file.FileName); if (fileExtension.StartsWith(".") && new List <string>() { ".png", ".jpg", ".svg" }.Contains(fileExtension)) { fileExtension = fileExtension.Substring(1).ToLower(); } else { ViewBag.Message = "Nieprawidłowy format pliku, akceptowane: png, jpg, svg"; return(View("AddImage")); } ViewBag.meal = true; ObrazyPosilku image = new ObrazyPosilku(); image.id_posilku = id; MemoryStream memeoryStream = new MemoryStream(); file.CopyTo(memeoryStream); image.obraz = memeoryStream.ToArray(); image.format = fileExtension; memeoryStream.Close(); memeoryStream.Dispose(); await _context.obrazyPosilkow.AddAsync(image); await _context.SaveChangesAsync(); ViewBag.Message = "Obraz został dodany"; this.isDietician(); return(RedirectToAction("Details", new { id = meal.id_posilku })); }