为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

C#
精慕HU 2023-05-13 15:44:30
我已经实现了一个使用方法的类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;}
查看完整描述

1 回答

?
ibeautiful

TA贡献1993条经验 获得超5个赞

所以我尝试了所有可能的方法,并且我找到了很多解决 GetStreamAsync() 问题的方法,但是直到一个伙伴告诉我尝试关闭我以前的 StreamReader 并且它开始工作时,它们都没有工作。它正在工作很尴尬.NET Core 而不是.NET Framework.. streamReader.Close();



查看完整回答
反对 回复 2023-05-13
  • 1 回答
  • 0 关注
  • 171 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信