从.NET 2.0客户端调用Web Api服务

是否可以从.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不兼容

有没有办法从.NET 2.0客户端调用Web Api方法而不添加任何dll?

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

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

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

 using (var client = new WebClient()) { client.Headers[HttpRequestHeaders.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 } 

如果你想POST一些值:

 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); 

//现在使用JSON解析器将生成的字符串解析回某个CLR对象}