public async Task <IActionResult> Edit(int id, [Bind("Id,LakeId,Year,LakePart,NH4,NO2,NO3,PPO4,Cu,Zn,Mn,Pb,Ni,Cd,Co")] ToxicologicalIndicator toxicologicalIndicator) { if (id != toxicologicalIndicator.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(toxicologicalIndicator); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ToxicologicalIndicatorExists(toxicologicalIndicator.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(toxicologicalIndicator)); }
public async Task <IActionResult> Create([Bind("Id,LakeId,Year,LakePart,NH4,NO2,NO3,PPO4,Cu,Zn,Mn,Pb,Ni,Cd,Co")] ToxicologicalIndicator toxicologicalIndicator) { if (ModelState.IsValid) { _context.Add(toxicologicalIndicator); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(toxicologicalIndicator)); }
public async Task <IActionResult> Upload(bool FirstRowHeader, IFormFile File) { try { string sContentRootPath = _hostingEnvironment.WebRootPath; sContentRootPath = Path.Combine(sContentRootPath, "Uploads"); DirectoryInfo di = new DirectoryInfo(sContentRootPath); foreach (FileInfo filed in di.GetFiles()) { try { filed.Delete(); } catch { } } string path_filename = Path.Combine(sContentRootPath, Path.GetFileName(File.FileName)); using (var stream = new FileStream(Path.GetFullPath(path_filename), FileMode.Create)) { await File.CopyToAsync(stream); } FileInfo fileinfo = new FileInfo(Path.Combine(sContentRootPath, Path.GetFileName(path_filename))); using (ExcelPackage package = new ExcelPackage(fileinfo)) { int start_row = 1; if (FirstRowHeader) { start_row++; } List <ToxicologicalIndicator> toxicologicalIndicators = new List <ToxicologicalIndicator>(); for (int i = start_row; ; i++) { if (package.Workbook.Worksheets.FirstOrDefault().Cells[i, 1].Value == null) { break; } ToxicologicalIndicator toxicologicalIndicator = new ToxicologicalIndicator(); try { toxicologicalIndicator.LakeId = Convert.ToInt32(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 1].Value); toxicologicalIndicator.Year = Convert.ToInt32(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 2].Value); toxicologicalIndicator.LakePart = (LakePart)Convert.ToInt32(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 3].Value); toxicologicalIndicator.NH4 = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 4].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 4].Value); toxicologicalIndicator.NO2 = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 5].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 5].Value); toxicologicalIndicator.NO3 = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 6].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 6].Value); toxicologicalIndicator.PPO4 = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 7].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 7].Value); toxicologicalIndicator.Cu = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 8].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 8].Value); toxicologicalIndicator.Zn = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 9].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 9].Value); toxicologicalIndicator.Mn = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 10].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 10].Value); toxicologicalIndicator.Pb = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 11].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 11].Value); toxicologicalIndicator.Ni = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 12].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 12].Value); toxicologicalIndicator.Cd = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 13].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 13].Value); toxicologicalIndicator.Co = package.Workbook.Worksheets.FirstOrDefault().Cells[i, 14].Value == null ? (decimal?)null : Convert.ToDecimal(package.Workbook.Worksheets.FirstOrDefault().Cells[i, 14].Value); } catch (Exception e) { ViewBag.Error = $"{_sharedLocalizer["Row"]} {i.ToString()}: " + e.Message + (e.InnerException == null ? "" : ": " + e.InnerException.Message); break; } toxicologicalIndicators.Add(toxicologicalIndicator); _context.Add(toxicologicalIndicators.LastOrDefault()); } if (string.IsNullOrEmpty(ViewBag.Error)) { _context.SaveChanges(); ViewBag.Report = $"{_sharedLocalizer["UploadedCount"]}: {toxicologicalIndicators.Count()}"; } } foreach (FileInfo filed in di.GetFiles()) { try { filed.Delete(); } catch { } } } catch (Exception e) { if (File != null) { ViewBag.Error = e.Message + (e.InnerException == null ? "" : ": " + e.InnerException.Message); } } return(View()); }