public static void Initialize(InoLibraryDbContext context) { if (!context.Categories.Any()) { List <Category> categories = new List <Category> { new Category { Name = "Физика" }, new Category { Name = "Химия" }, new Category { Name = "Биология" }, new Category { Name = "Астрономия" }, new Category { Name = "Геология" }, new Category { Name = "География" }, }; context.Categories.AddRange(categories); context.SaveChanges(); } }
public async Task <IActionResult> EditPublication(EditPublicationViewModel model) { if (ModelState.IsValid) { if (model != null) { Publication publication = await _db.Publications.Include(pub => pub.PublicationCategories).ThenInclude(pc => pc.Category).FirstOrDefaultAsync(p => p.Id == model.Id); publication.Name = model.Name; publication.Annotation = model.Annotation; publication.PublishingYear = model.PublishingYear; publication.PublicationCategories.RemoveRange(0, publication.PublicationCategories.Count); Category tempCat; foreach (string cat in model.Categories) { tempCat = _db.Categories.FirstOrDefault(c => c.Name == cat); publication.PublicationCategories.Add(new PublicationCategory { PublicationId = publication.Id, CategoryId = tempCat.Id }); } if (model.File != null) { // путь к папке Files string newPath = "/Files/" + model.File.FileName; string oldPath = model.OldFilePath; // сохраняем файл в папку Files в каталоге wwwroot using (var fileStream = new FileStream(_appEnvironment.WebRootPath + newPath, FileMode.Create)) { await model.File.CopyToAsync(fileStream); publication.Path = fileStream.Name; } System.IO.File.Delete(oldPath); } _db.SaveChanges(); return(RedirectToAction("ObservePublication", "Publications", new { id = publication.Id })); } return(NotFound()); } return(View(model)); }