public async Task <IActionResult> OnPostAsync() { if (!ModelState.IsValid) { return(Page()); } //удаление старого фото и загрузка нового на сервер if (Photo != null) { if (!_fileRepository.CheckMIMEType(Photo)) //проверка типа файла { TempData["MIMETypeError"] = "Разрешены только файлы с типом .jpg .jpeg .png .gif"; return(Page()); } if (Materials.ImagePath != null) { _fileRepository.DeleteFile(Materials.ImagePath, "Materials"); //удаляем старый файл } Materials.ImagePath = await _fileRepository.UploadFile(Photo, "Materials"); //загрузка файл на сервер и запись имени файла } try { await _db.Update(Materials); //запрос к БД на изменение записи } catch (DbUpdateConcurrencyException) { if (!_db.MaterialsExists(Materials.Id)) { return(NotFound()); } else { throw; } } TempData["SuccessMessage"] = $"Запись \"{Materials.Name}\" успешно обновлена"; return(RedirectToPage("./Index")); }
public async Task <IActionResult> Put(int id, [FromBody] Material material) { var result = await _repository.Update(id, material).ConfigureAwait(false); return(result ? new StatusCodeResult(200) : new StatusCodeResult(422)); }