public async Task <IActionResult> Import(IFormFile fileExcel) { if (ModelState.IsValid) { if (fileExcel != null) { using (var stream = new FileStream(fileExcel.FileName, FileMode.Create)) { await fileExcel.CopyToAsync(stream); using (XLWorkbook workBook = new XLWorkbook(stream, XLEventTracking.Disabled)) { foreach (IXLWorksheet worksheet in workBook.Worksheets) { Вузы newUniv; var t = (from temp in _context.Вузы where temp.НазваниеВуза.Contains(worksheet.Name) select temp).ToList(); if (t.Count > 0) { newUniv = t[0]; } else { newUniv = new Вузы(); newUniv.НазваниеВуза = worksheet.Name; _context.Вузы.Add(newUniv); await _context.SaveChangesAsync(); newUniv = _context.Вузы.FirstOrDefault(e => e.НазваниеВуза == worksheet.Name); } foreach (IXLRow row in worksheet.RowsUsed().Skip(1)) { try { Группы group = new Группы(); group.ВузId = newUniv.Id; group.Название = row.Cell(1).Value.ToString(); if (!_context.Группы.Any(e => e.ВузId == newUniv.Id && e.Название == group.Название)) { _context.Группы.Add(group); } } catch (Exception e) { throw; } } } } } } await _context.SaveChangesAsync(); } return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> Edit(int id, [Bind("Id,НазваниеВуза")] Вузы вузы) { if (id != вузы.Id) { return(NotFound()); } if (_context.Вузы.Any(e => e.НазваниеВуза == вузы.НазваниеВуза && e.Id != вузы.Id)) { return(RedirectToAction("ErrorScreen", "Home", new { textOfError = "ВУЗ с таким названием уже существует", controllerName = "Вузы" })); } if (ModelState.IsValid) { try { _context.Update(вузы); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ВузыExists(вузы.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(вузы)); }
public async Task <IActionResult> Create([Bind("Id,НазваниеВуза")] Вузы вузы) { if (ModelState.IsValid) { if (_context.Вузы.Any(e => e.НазваниеВуза == вузы.НазваниеВуза && e.Id != вузы.Id)) { return(RedirectToAction("ErrorScreen", "Home", new { textOfError = "ВУЗ с таким названием уже существует", controllerName = "Вузы" })); } _context.Add(вузы); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(вузы)); }