public async Task <IActionResult> SuaSach(int id, SuaSachViewModel model) { var sach = await context.Sach.FindAsync(id); sach.ChieuDai = model.ChieuDai; sach.ChieuRong = model.ChieuRong; sach.ChuDeId = model.ChuDeId; sach.DanhMucId = model.DanhMucId; sach.DinhDang = model.DinhDang; sach.DonGia = model.DonGia; sach.NhaXuatBanId = model.NhaXuatBanId; sach.TomTat = model.TomTat; sach.TacGiaId = model.TacGiaId; sach.SoLuong = model.SoLuong; sach.SoTrang = model.SoTrang; sach.PhanTramGiamGia = model.PhanTramGiamGia; sach.TenSach = model.TenSach; //nếu muốn upload hình ảnh mới thì if (model.uploadHinhAnh != null) { //lấy file cũ var fileInfo = new FileInfo(environment.WebRootPath + "/images/Sach/" + sach.HinhAnh); if (fileInfo.Exists)//nếu trước đó có ảnh thì xóa ảnh đó đi { fileInfo.Delete(); } //upload ảnh mới sach.HinhAnh = await uploadHinhAnh(id, model.uploadHinhAnh); } context.Sach.Update(sach); await context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); }
public async Task <IActionResult> SuaSach(int?id) { if (!id.HasValue || await context.Sach.FindAsync(id) == null) //tìm thông tin sách theo id) { //nếu không có id thì trở lại trang trước đó return(NotFound()); } var sach = await context.Sach.FindAsync(id); if (sach == null) //nếu mã số sai thì không có trang { return(NotFound()); } await context.Entry(sach).Reference(x => x.ChuDe).LoadAsync(); //load chủ đề vào sách await context.Entry(sach).Reference(x => x.TacGia).LoadAsync(); await context.Entry(sach).Reference(x => x.DanhMuc).LoadAsync(); await context.Entry(sach).Reference(x => x.NhaXuatBan).LoadAsync(); var model = new SuaSachViewModel { Id = sach.id, ChieuDai = sach.ChieuDai, ChieuRong = sach.ChieuRong, ChuDeId = sach.ChuDeId, TacGiaId = sach.TacGiaId, DanhMucId = sach.DanhMucId, NhaXuatBanId = sach.NhaXuatBanId, DinhDang = sach.DinhDang, DonGia = sach.DonGia, TomTat = sach.TomTat, TenSach = sach.TenSach, SoLuong = sach.SoLuong, SoTrang = sach.SoTrang, HinhAnh = sach.HinhAnh, PhanTramGiamGia = sach.PhanTramGiamGia, ChuDes = await context.ChuDe.ToListAsync(), DanhMucs = await context.DanhMuc.ToListAsync(), NhaXuatBans = await context.NhaXuatBan.ToListAsync(), TacGias = await context.TacGia.ToListAsync(), }; return(View(model)); }