“HttpClient”不包含“GetFromJsonAsync”的定义

esa*_*ain 4 .net c# blazor

我创建了一个新的Blazor 应用程序,我想通过HttpClient访问一个 URL 我遇到了这个错误

“HttpClient”不包含“GetFromJsonAsync”的定义,并且找不到接受“HttpClient”类型的第一个参数的可访问扩展方法“GetFromJsonAsync”(您是否缺少 using 指令或程序集引用?)[BlazorApp]csharp( CS1061),

这是我的代码

 @inject HttpClient Http
    <h1>@name</h1>
    @code {
        private string name;
    
        protected override async Task OnInitializedAsync()
        {
            name = await Http.GetFromJsonAsync<string>("api/");
        }
    }
Run Code Online (Sandbox Code Playgroud)

Joh*_*lay 6

您需要添加以下 using 指令:

using System.Net.Http.Json;
Run Code Online (Sandbox Code Playgroud)

GetFromJsonAsync是一个扩展方法,而不是HttpClient它本身的一部分。

  • @esamaldinelzain - 这是一个非常糟糕的选择。始终避免“.Result” (2认同)