示例#1
0
        public async Task <BitcoinAverageConvertModel> getConvert(double amount, string from = "RUB", string to = "BTC", SymbolSetsEnum set_symbol = SymbolSetsEnum.global)
        {
            using (HttpClient client = new HttpClient())
            {
                try
                {
                    using (HttpResponseMessage response = await client.GetAsync(BaseUrl + "convert/" + set_symbol.ToString() + "?from=" + from + "&to=" + to + "&amount=" + amount))
                    {
                        response.EnsureSuccessStatusCode();
                        string responseBody = await response.Content.ReadAsStringAsync();

                        using (var ms = new MemoryStream(Encoding.Unicode.GetBytes(responseBody)))
                        {
                            DataContractJsonSerializer deserializer = new DataContractJsonSerializer(typeof(BitcoinAverageConvertModel));
                            BitcoinAverageConvertModel bsObj2       = (BitcoinAverageConvertModel)deserializer.ReadObject(ms);
                            responseBody = null;
                            return(bsObj2);
                        }
                    }
                }
                catch (HttpRequestException e)
                {
                    Console.WriteLine("\nException Caught!");
                    Console.WriteLine("Message :{0} ", e.Message);
                }
            }
            return(null);
        }
示例#2
0
        protected override void ScheduleBodyAsyncAction()
        {
            SetStatus("Запрос к API-BitcoinAverage (не-авторизованый)");

            BitcoinAverageConvertModel answer = client.getConvert(SumFilter).Result;

            if (answer is null)
            {
                SetStatus("Ошибка получения данных с сервера API-BitcoinAverage", StatusTypes.ErrorStatus);

                SetStatus(null);
                return;
            }
            CurrentBtcRate = Math.Round(1 / answer.price * SumFilter, 2);
            RatesBTC.Add(answer);
        }