public async Task <IActionResult> Post([FromBody] dynamic data) { try { TestUserProfile profileToReturn = await _profileRepository.GetProfileByEmailAsync(data.email); return(Ok(profileToReturn)); } catch { try { TestUserProfile userProfileToAdd = new TestUserProfile(); userProfileToAdd.Name = data.name; userProfileToAdd.UserEmail = data.email; userProfileToAdd.UserPassword = data.password; await _profileRepository.AddAsync(userProfileToAdd); TestUserProfile profileToReturn = await _profileRepository.GetProfileByEmailAsync(userProfileToAdd.UserEmail); await _rankingRepository.CreateListOfPlayerRanksByProfileId(profileToReturn.TestUserProfileId, _playerRepository, _rankingRepository); return(Ok(profileToReturn)); } catch (Exception ex) { Console.WriteLine(ex.Message); return(null); } } }