Почему это работает в этом классе не работает в другом классе - PullRequest
0 голосов
/ 02 октября 2019

У меня есть 2 viewmodel, aviewmodel и bviewmodel. в aviewmodel и bviewmodel используются метод GetListEmployees (). у меня проблема. В aviewmodel я успешно запустил GetListEmployees ()., Но в bviewmodel он не работает. Я отлаживаю и вижу, что это было брошено, когда это прибыло в ответ. Я не знаю, почему это так.

описание видео. https://youtu.be/CD3lHKx3igs

Функция для получения списка.

async private Task GetListEmployees()
    {
        var result = await GeneralMethods.Ins.GetDataFromDB<Employee>("Employee/employees");
       // ListEmployee = new ObservableCollection<Employee>(result);
    }

Это API чтения класса.

 public class GeneralMethods
{
    private static GeneralMethods _Ins;

    public static GeneralMethods Ins
    {
        get
        {
            if (_Ins == null)
                _Ins = new GeneralMethods();
            return GeneralMethods._Ins;
        }
        private set
        {
            GeneralMethods._Ins = value;
        }
    }

    public async Task<List<T>> GetDataFromDB<T>(string urlDB)
    {
        string url = "http://webapi.local/api/" + urlDB;

        using (HttpResponseMessage response = await APIHelper.ApiClient.GetAsync(url))
        {
            if (response.IsSuccessStatusCode)
            {
                var result = response.Content.ReadAsAsync<List<T>>().Result;

                return result;
            }
            else
            {
                throw new Exception(response.ReasonPhrase);
            }
        }
    }

}

APIHelper

 public static class APIHelper
{
    public static HttpClient ApiClient { get; set; }

    public static void InitializeClient()
    {
        ApiClient = new HttpClient();
        ApiClient.DefaultRequestHeaders.Accept.Clear();
        ApiClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...