13

是否可以从 .NET 2.0 客户端调用 Web Api 方法?

参考这里的指南:http ://www.asp.net/web-api/overview/web-api-clients/calling-a-web-api-from-a-net-client

客户端的某些 dll 似乎与 .NET 2.0 不兼容

有什么方法可以在不添加任何 dll 的情况下从 .NET 2.0 客户端调用 Web Api 方法?

4

1 回答 1

28

是否可以从 .NET 2.0 客户端调用 Web Api 方法?

当然有可能。您绝对可以从任何符合 HTTP 的客户端调用它。客户端甚至可能不是 .NET。

例如,在 .NET 2.0 中,您可以使用WebClient该类:

using (var client = new WebClient())
{
    client.Headers[HttpRequestHeader.Accept] = "application/json";
    string result = client.DownloadString("http://example.com/values");
    //now use a JSON parser to parse the resulting string back to some CLR object
}

如果你想发布一些价值:

using (var client = new WebClient())
{
    client.Headers[HttpRequestHeader.ContentType] = "application/json";
    client.Headers[HttpRequestHeader.Accept] = "application/json";
    var data = Encoding.UTF8.GetBytes("{\"foo\":\"bar\"}");
    byte[] result = client.UploadData("http://example.com/values", "POST", data);
    string resultContent = Encoding.UTF8.GetString(result, 0, result.Length);        
    //now use a JSON parser to parse the resulting string back to some CLR object
}
于 2013-07-05T07:26:04.717 回答