public async Task <KerykeionDbResult> UpdateAsync(Image image, IFormFile file, IEnumerable <KeyValuePair <string, StringValues> > formForeignKeys) { if (image == null || file == null) { return(KerykeionDbResult.Fail(new KerykeionDbError { Message = "The supplied arguments are not valid." })); } if (formForeignKeys != null) { var result = await EntitiesService.SetForeignKeysAsync(image, formForeignKeys); if (!result.Successfull) { return(result); } } var replaceImgResult = await _imagesService.ReplaceImage(image?.Url.Split("/").Last(), file); if (replaceImgResult.Success) { image.Url = $"/images/{replaceImgResult.ImgUrl}"; return(await UpdateAsync(image)); } return(KerykeionDbResult.Fail(new KerykeionDbError { Message = "Could not upload the new image." })); }
public async Task <KerykeionDbResult> UpdateAsync(Image image, IEnumerable <KeyValuePair <string, StringValues> > formForeignKeys) { if (formForeignKeys != null) { var result = await EntitiesService.SetForeignKeysAsync(image, formForeignKeys); if (!result.Successfull) { return(result); } } return(await UpdateAsync(image)); }
public async Task <KerykeionDbResult> CreateAsync(Image image, IFormFile file, IEnumerable <KeyValuePair <string, StringValues> > formForeignKeys) { if (image == null || file == null) { return(KerykeionDbResult.Fail(new KerykeionDbError { Message = "The supplied arguments are not valid." })); } if (string.IsNullOrEmpty(image.Name)) { return(KerykeionDbResult.Fail(new KerykeionDbError { Message = "Please provide a name for the Image." })); } if (formForeignKeys != null) { var result = await EntitiesService.SetForeignKeysAsync(image, formForeignKeys); if (!result.Successfull) { return(result); } } var uploadResult = await _imagesService.SaveImage(file); if (uploadResult.Success) { image.Url = $"/images/{uploadResult.ImgUrl}"; return(await CreateAsync(image)); } return(KerykeionDbResult.Fail(new KerykeionDbError { Message = "The upload of the file failed." })); }