在C#中调用WebAPI时,可以通过try-catch块来处理异常。以下是一个简单的示例代码:
try
{
    HttpClient client = new HttpClient();
    HttpResponseMessage response = await client.GetAsync("https://api.example.com/data");
    if (response.IsSuccessStatusCode)
    {
        string responseBody = await response.Content.ReadAsStringAsync();
        // 处理成功的响应数据
    }
    else
    {
        // 处理API返回的错误信息
        throw new Exception("API请求失败:" + response.ReasonPhrase);
    }
}
catch (HttpRequestException ex)
{
    // 处理HTTP请求异常
    Console.WriteLine("HTTP请求异常:" + ex.Message);
}
catch (Exception ex)
{
    // 处理其他异常
    Console.WriteLine("发生异常:" + ex.Message);
}
在上面的示例中,我们首先使用HttpClient发送一个GET请求到WebAPI,并检查响应的状态。如果响应状态码为成功,我们可以通过ReadAsStringAsync()方法获取响应体的内容。如果响应状态码不是成功,则抛出一个异常来处理API返回的错误信息。
在catch块中,我们分别处理了HttpRequestException和其他异常。对于HTTP请求异常,我们输出异常信息;对于其他异常,也可以根据具体情况进行相应的处理。