无法找到如何使用HttpContent(Can't find how to use Http

2019-06-25 15:52发布

我试图用HttpContent

HttpContent myContent = HttpContent.Create(SOME_JSON);

......但我没有任何运气找到定义它的DLL。

首先,我想加入引用Microsoft.Http以及System.Net ,但也不是在列表中。 我也尝试添加到基准System.Net.HttpHttpContent类不可用。

那么,谁能告诉我哪里可以找到HttpContent类?

Answer 1:

类被列为存在于System.Net.Http组件。 请注意,这个类是新的.NET 4.5,所以你需要使用该版本的BCL的。



Answer 2:

只需使用...

var stringContent = new StringContent(jObject.ToString());
var response = await httpClient.PostAsync("http://www.sample.com/write", stringContent);

要么,

var stringContent = new StringContent(JsonConvert.SerializeObject(model), Encoding.UTF8, "application/json");
var response = await httpClient.PostAsync("http://www.sample.com/write", stringContent);


Answer 3:

要采取6footunder的评论,并把它变成一个答案, HttpContent所以你需要使用一个派生类是抽象的:



Answer 4:

对于JSON帖子:

var stringContent = new StringContent(json, Encoding.UTF8, "application/json");
var response = await httpClient.PostAsync("http://www.sample.com/write", stringContent);

非JSON:

var stringContent = new FormUrlEncodedContent(new[]
{
    new KeyValuePair<string, string>("field1", "value1"),
    new KeyValuePair<string, string>("field2", "value2"),
});
var response = await httpClient.PostAsync("http://www.sample.com/write", stringContent);

https://blog.pedrofelix.org/2012/01/16/the-new-system-net-http-classes-message-content/



Answer 5:

虽然HttpContent和最终版的整个System.Net.Http命名空间将拿出.NET 4.5,你可以通过添加使用.NET 4的版本Microsoft.Net.Http从NuGet包



Answer 6:

我敢肯定的代码没有使用System.Net.Http.HttpContent类,而是Microsoft.Http.HttpContent。 Microsoft.Http是WCF REST入门套件,被放置在.NET Framework之前从未做出来的预览。 你还可以在这里找到: http://aspnet.codeplex.com/releases/view/24644

我不会推荐它基础上构建新的代码。



Answer 7:

System.Net.Http命名空间(其中HttpContent类所在的)是一个新的.NET 4.5,你使用VS2012 RC?

否则,你就无法获得这一点。



文章来源: Can't find how to use HttpContent