private async Task <T> SendRequest <T>(string address)
            where T : IResponce, new()
        {
            var responce = await StartRequest(address);

            if (string.IsNullOrEmpty(responce))
            {
                return(new T()
                {
                    Success = false
                });
            }
            try
            {
                var responceDeserialize = await Task.Run(() => Serializer.Deserialize <T>(responce));

                return(responceDeserialize);
            }
            catch
            {
                ContentDialogHelper.ShowMessage("Получены неверные данные", "Загружены ошибочные данные, пожалуйста, попробуйте снова.");
                return(new T()
                {
                    Success = false
                });
            }
        }
        private async Task <string> StartRequest(string address)
        {
            string httpResponseBody = "";

            using (var httpClient = new HttpClient())
            {
                try
                {
                    var httpResponse = await httpClient.GetAsync(new Uri(address));

                    httpResponse.EnsureSuccessStatusCode();
                    httpResponseBody = await httpResponse.Content.ReadAsStringAsync();
                }
                catch
                {
                    ContentDialogHelper.ShowMessage("Ошибка при получении данных", "Произошла ошибка при получении данных, пожалуйста, попробуйте еще раз.");
                    httpResponseBody = "";
                }
            }
            return(httpResponseBody);
        }