Beispiel #1
0
        public async Task <IActionResult> GetCryptoCoins()
        {
            var response = await _cryptoCoinApiService.GetCryptoCoinResponseFromApiAsync();

            if (response.StatusCode != HttpStatusCode.OK)
            {
                return(StatusCode((int)response.StatusCode));
            }
            CryptoCoinResult result = JsonConvert.DeserializeObject <CryptoCoinResult>(response.Content);

            return(Ok(result));
        }
Beispiel #2
0
        public async Task <IActionResult> GetFavorites()
        {
            var email = (string)HttpContext.Items["User"];
            var user  = await _userManager.FindByNameAsync(email);

            var favoriteCryptoCoinIds = _context.FavoriteCryptoCoins.Where(fc => fc.UserId == user.Id)
                                        .Select(e => e.CryptoCoinId).ToList();

            var response = await _cryptoCoinApiService.GetCryptoCoinResponseFromApiAsync();

            if (response.StatusCode != HttpStatusCode.OK)
            {
                return(StatusCode((int)response.StatusCode));
            }
            CryptoCoinResult result = JsonConvert.DeserializeObject <CryptoCoinResult>(response.Content);
            var favoriteCryptoCoins =
                result.Data.Where(fcc => favoriteCryptoCoinIds.Contains(fcc.Id));

            return(Ok(favoriteCryptoCoins));
        }