public async Task UpdateAvatarAsync(string userId, Stream fileStream) { using (var image = Image.Load(fileStream)) { PrepareImage(image); using (var outStream = new MemoryStream()) { image.SaveAsJpeg(outStream); await _avatarRepository.SaveAvatarStreamAsync(userId, outStream); // set new tail when avatar has changed. Set new random value in range 0..9999 to ignore cache response await _userRepository.UpdateAvatarTailAsync(userId, (int)(DateTime.UtcNow.Ticks % 10_000)); } } }