public async Task <Photo> Handle(Command request, CancellationToken cancellationToken) { PhotoUploadResult photoUploadResult = _photoAccessor.AddPhoto(request.File); AppUser user = await _context.Users .SingleOrDefaultAsync(u => u.UserName == _userAccessor.GetCurrentUsername()); Photo photo = new Photo { Url = photoUploadResult.Url, Id = photoUploadResult.PublicId }; if (!user.Photos.Any(p => p.IsMain)) { photo.IsMain = true; } user.Photos.Add(photo); bool success = await _context.SaveChangesAsync() > 0; if (success) { return(photo); } throw new Exception("Problem saving changes"); }
private Photo CreateNewPhoto(PhotoUploadResult photoUploadResult) { var photo = new Photo { Url = photoUploadResult.Url, Id = photoUploadResult.publicId }; return(photo); }