无法推断方法 'HttpRequest.asJson()' 的类型参数
The type arguments for method 'HttpRequest.asJson()' cannot be inferred
我正在尝试 运行 C# 控制台程序:
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Task<HttpResponse<MyClass>> response = Unirest.get("https://wordsapiv1.p.mashape.com/words/cat/rhymes")
.header("X-Mashape-Key", "xxx")
.header("Accept", "application/json")
.asJson();
}
}
internal class MyClass
{
public string word { get; set; }
}
}
但这给了我以下错误:
Error CS0411 The type arguments for method 'HttpRequest.asJson()'
cannot be inferred from the usage. Try specifying the type arguments
explicitly.
有人知道我做错了什么吗?
.asJson();
需要知道 应该将 json 反序列化为什么类型 。在本例中,您使用的是 MyClass
。
将您的代码更改为以下内容:
HttpResponse<MyClass> response = Unirest.get("https://wordsapiv1.p.mashape.com/words/cat/rhymes")
.header("X-Mashape-Key", "xxx")
.header("Accept", "application/json")
.asJson<MyClass>();
此外,您没有调用 asJson
的异步版本,因此结果类型是 HttpResponse<MyClass>
,而不是 Task<HttpResponse<MyClass>>
。
请阅读示例here
我正在尝试 运行 C# 控制台程序:
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Task<HttpResponse<MyClass>> response = Unirest.get("https://wordsapiv1.p.mashape.com/words/cat/rhymes")
.header("X-Mashape-Key", "xxx")
.header("Accept", "application/json")
.asJson();
}
}
internal class MyClass
{
public string word { get; set; }
}
}
但这给了我以下错误:
Error CS0411 The type arguments for method 'HttpRequest.asJson()' cannot be inferred from the usage. Try specifying the type arguments explicitly.
有人知道我做错了什么吗?
.asJson();
需要知道 应该将 json 反序列化为什么类型 。在本例中,您使用的是 MyClass
。
将您的代码更改为以下内容:
HttpResponse<MyClass> response = Unirest.get("https://wordsapiv1.p.mashape.com/words/cat/rhymes")
.header("X-Mashape-Key", "xxx")
.header("Accept", "application/json")
.asJson<MyClass>();
此外,您没有调用 asJson
的异步版本,因此结果类型是 HttpResponse<MyClass>
,而不是 Task<HttpResponse<MyClass>>
。
请阅读示例here