Llamando al servicio Web Api desde un cliente .NET 2.0

¿Es posible llamar a un método Web Api desde un cliente .NET 2.0?

Consulte la guía aquí: http://www.asp.net/web-api/overview/web-api-clients/calling-a-web-api-from-a-net-client

Algunas de estas dlls para el cliente no parecen ser compatibles con .NET 2.0

¿Hay alguna manera de llamar a un método Web Api desde un cliente .NET 2.0 sin agregar dlls?

¿Es posible llamar a un método Web Api desde un cliente .NET 2.0?

Por supuesto que es posible. Puede llamarlo desde cualquier cliente compatible con HTTP. El cliente puede que ni siquiera sea .NET.

Por ejemplo, en .NET 2.0 podría usar la clase de 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 } 

y si quisieras POSTAR algún valor:

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

// ahora use un analizador JSON para analizar la cadena resultante de nuevo a algún objeto CLR}