protected override void ExecuteRequest(HttpContext context) { (bool isOk, User user) = CheckClaimsForUser(Request, context, _userRepository); if (!isOk || user == null) { return; } Avatar avatar = _avatarRepository.GetByUser(user).GetAwaiter().GetResult(); if (avatar != null) { IEnumerable <Skin> skins = _skinRepository.GetAll().GetAwaiter().GetResult(); IEnumerable <GetAvailableSkinsDTOResponse> skinsDTOReponse = skins.Select(skin => { SkinInformations skinInformations = SkinHandlers.Handle(user, skin, _avatarRepository, _categoryRepository, _questTypeRepository, _questRepository).GetAwaiter().GetResult(); return(new GetAvailableSkinsDTOResponse(skin.Id, skin.Name, skin.LevelMin, skinInformations.Description, skinInformations.Unlocked)); }).Where(skin => skin.Unlocked ); if (skinsDTOReponse != null) { string skinsJson = JsonSerializer.Serialize(skinsDTOReponse); context.Response.StatusCode = StatusCodes.Status200OK; context.Response.WriteAsync(skinsJson).GetAwaiter().GetResult(); return; } } context.Response.StatusCode = StatusCodes.Status400BadRequest; }