public async Task <ActionResult <CardReadDTO> > AddCardToUserInventory(string id, CardCreateDTO cardCreateDTO) { var user = await _userRepo.GetOneUser(id); AppCard newCard; if (user != null) { newCard = new AppCard(cardCreateDTO.Rating, cardCreateDTO.NumOfRatings, cardCreateDTO.Rarity) { CardId = cardCreateDTO.CardId, Name = cardCreateDTO.Name, Type = cardCreateDTO.Type, Image = cardCreateDTO.Image, }; newCard.UpdateValue(); await _userRepo.AddOneCardToOneUser(id, newCard.CardId); } else { return(NotFound()); } var cardReadDTO = new CardReadDTO { CardId = cardCreateDTO.CardId, Name = cardCreateDTO.Name, Type = cardCreateDTO.Type, Rarity = cardCreateDTO.Rarity, Rating = cardCreateDTO.Rating, NumOfRatings = cardCreateDTO.NumOfRatings, Value = cardCreateDTO.Value }; // what method to return return(CreatedAtAction(nameof(GetUsersCardById), new { id = user.UserId, cardid = newCard.CardId }, cardReadDTO)); }