小编Izl*_*zle的帖子

C# HttpClient 返回状态 WaitingForActivation

我只有一种 Api 请求方法如下

private async Task<Site> getSiteAsync(string siteId)
{
    Site site = null;
    var response = await httpClient.SendAsync( 
        new HttpRequestMessage(HttpMethod.Get, httpClient.BaseAddress + $"api/sites/{siteId}"));
    if (response.IsSuccessStatusCode)
    {
        var stream = await response.Content.ReadAsStreamAsync();
        site = await JsonSerializer.DeserializeAsync<Site>(stream, serializerOptions);
    }
    return site;
}
Run Code Online (Sandbox Code Playgroud)

当我尝试从 MainClass 调用它时,第一个调用 (a) 工作正常,但是 b、c 和 d 它们都返回给我Status= WaitingForActivation

private readonly HttpClient httpClient = new HttpClient();
private readonly JsonSerializerOptions serializerOptions = new JsonSerializerOptions();

public MainWindow()
{
    httpClient.BaseAddress = new Uri($"http://localhost:5000/MyApi/");
    httpClient.DefaultRequestHeaders.Accept.Clear();
    httpClient.DefaultRequestHeaders.Accept.Add(
                new MediaTypeWithQualityHeaderValue("application/json"));
    serializerOptions.PropertyNamingPolicy = …
Run Code Online (Sandbox Code Playgroud)

c# wpf async-await .net-core asp.net-core-webapi

3
推荐指数
1
解决办法
177
查看次数

标签 统计

.net-core ×1

asp.net-core-webapi ×1

async-await ×1

c# ×1

wpf ×1