Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么它在这门课上有效,而在另一门课上不起作用_C#_Mvvm_Httpclient - Fatal编程技术网

C# 为什么它在这门课上有效,而在另一门课上不起作用

C# 为什么它在这门课上有效,而在另一门课上不起作用,c#,mvvm,httpclient,C#,Mvvm,Httpclient,我有两个视图模型,aviewmodel和bviewmodel。在aviewmodel和bviewmodel中使用方法GetListEmployees()。我有个问题。 在aviewmodel中,我已成功运行GetListEmployees()。但在bviewmodel中,它不起作用。我调试并看到它在响应时被抛出。我不知道为什么会这样 视频描述 函数获取列表 async private Task GetListEmployees() { var result = await

我有两个视图模型,aviewmodel和bviewmodel。在aviewmodel和bviewmodel中使用方法GetListEmployees()。我有个问题。 在aviewmodel中,我已成功运行GetListEmployees()。但在bviewmodel中,它不起作用。我调试并看到它在响应时被抛出。我不知道为什么会这样

视频描述

函数获取列表

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

如果您告诉我们它抛出了一个异常,那么在粘贴它时它是值得的。他们会告诉你出了什么问题,更重要的是,他们会告诉我们出了什么问题HttpResponseMessage response=wait APIHelper.ApiClient.GetAsync(url)。如果有,它就不起作用。它跳过了使用运行。您是否比较了
url=”的值http://webapi.local/api/“+urlDB
调试时?我做了。我确信url是正确的
 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);
            }
        }
    }
 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"));
    }

}