我尝试了所有解决方案,但没有解决问题。
var requisicaoWeb = WebRequest.CreateHttp("url");
requisicaoWeb.Method = "GET";
//requisicaoWeb.UserAgent = "";\UserAgente doenst work
using (var resposta = requisicaoWeb.GetResponse())
{
var streamDados = resposta.GetResponseStream();
StreamReader reader = new StreamReader(streamDados);
object objResponse = reader.ReadToEnd();
var post = JsonConvert.DeserializeObject(objResponse.ToString());
Console.WriteLine(post);
Console.ReadLine();
streamDados.Close();
resposta.Close();
}
错误requisicao.GetResponse
"HttpWebRequest"不包含"GetResponse">的定义,并且找不到接受类型为"HttpWebRequest"的第一个参数的扩展方法"GetResponse"(您是否缺少使用指令或程序集引用?
当我使用 CTRL + 空格时,它只显示BeginGetRequestStream()
、BeginGetRespnse
、EndGetRequestStream
、EndGetResponse
、GetRequestStramAsync
和GetResponseAsync
代码顶部使用正确的using
:
using System.Net;
您的代码应如下所示:
using (var resposta = (HttpWebResponse)requisicaoWeb.GetResponse())
{
...
}
编辑:
经过一些提示,OP提到他们在Visual Studio 2015上针对.NET Core 1.0。
正如斯科特·张伯伦在评论中提到的,这是这个问题的原因。在VS2017中面向.NET Core 2.0可以成功使用GetResponse
。