How should I reference HttpClient
using a project.json
file?
I want both frameworks to work: dnx451
and dnxcore50
.
Here is my current attempt at the project.json
file. (I've removed the irrelevant parts.)
{
"dependencies": {
"Microsoft.Net.Http": "2.2.29",
"Microsoft.Net.Http.Headers": "1.0.0-beta4",
"System.Net.Http": "4.0.0-beta-22816"
},
"frameworks": {
"dnx451": {
"frameworkAssemblies": {
"System.Net.Http": "4.0.0.0"
}
},
"dnxcore50": { }
}
}
Discovering the dependencies I do have listed was a trial-and-error procedure.
With this project.json
file, the dnxcore50
context properly resolves all the classes in this example block of code, but it fails to resolve HttpRequestMessage
, HttpMethod
, and MediaTypeWithQualityHeaderValue
with the dnx451
context:
var request = new HttpRequestMessage(HttpMethod.Get, "...");
request.Headers.Accept.Clear();
request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/..."));
var response = await client.SendAsync(request);
var model = await response.EnsureSuccessStatusCode().Content.ReadAsAsync<SomeModel>();
As of the time of posting (June 11, 2015) this is the combination that worked for me for both dnx451
and dnxcore50
.
{
"dependencies": {
"Microsoft.AspNet.WebApi.Client": "5.2.3"
},
"frameworks": {
"dnx451": {
"frameworkAssemblies": {
"System.Net.Http": "4.0.0.0"
}
},
"dnxcore50": {
"dependencies": {
"System.Net.Http": "4.0.0-beta-22816"
}
}
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With