HttpClient.GetStreamAsync() 在 .NET Core 上工作而不在

我已经实现了一个使用方法的类HttpClient.GetStreamAsync()(这个类在第一个项目中)。为了测试我的课程,我使用了一个 .NET 核心项目(我在其中具有主要功能),并且它运行良好。


我被要求改用 .NET Framework,所以我创建了新项目(.NET Framework),重新使用了 .NET Core 项目的 program.cs,但是现在当我运行程序时,它卡在方法中,直到它HttpClient.GetStreamAsync()到达“任务被取消”的期望。


我重新启动了.NET Core项目,方法依旧有效


using (StreamReader streamReader = new StreamReader(Client.GetStreamAsync("https://" + User + ".cloudant.com/" + Database + "/_all_docs").Result))

{

    JObject responseContent = (JObject)JToken.ReadFrom(new JsonTextReader(streamReader));

    System.Collections.Generic.KeyValuePair<string, Newtonsoft.Json.Linq.JToken> ids = new KeyValuePair<string, JToken>("", null);

    JToken docsArray = responseContent.GetValue("rows");// type Newtonsoft.Json.Linq.JToken {Newtonsoft.Json.Linq.JArray}


    List<string> IDS = new List<string>();

    foreach (JToken doc in docsArray)

    {

        //Console.WriteLine(doc.ToString());

        string id = doc["id"].Value<string>();

        IDS.Add(id);

    }

    return IDS;

}


精慕HU
浏览 172回答 1
1回答

ibeautiful

所以我尝试了所有可能的方法,并且我找到了很多解决 GetStreamAsync() 问题的方法,但是直到一个伙伴告诉我尝试关闭我以前的 StreamReader 并且它开始工作时,它们都没有工作。它正在工作很尴尬.NET Core 而不是.NET Framework..&nbsp;streamReader.Close();
打开App,查看更多内容
随时随地看视频慕课网APP