我正试着用来自Web API的HttpClient发布一个JsonObject.我不太确定如何进行这项工作,在示例代码中也找不到很多东西.

以下是我目前掌握的情况:

var myObject = (dynamic)new JsonObject();
myObject.Data = "some data";
myObject.Data2 = "some more data";

HttpClient httpClient = new HttpClient("myurl");
httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

HttpResponseMessage response = httpClient.Post("", ???);

我想我需要把我的JsonObject投成StreamContent,但我在这一步上被挂断了.

推荐答案

有了新版本的HttpClient而没有WebApi软件包,它将是:

var content = new StringContent(jsonObject.ToString(), Encoding.UTF8, "application/json");
var result = client.PostAsync(url, content).Result;

或者如果你想要async:

var result = await client.PostAsync(url, content);

Asp.net相关问答推荐

有人可以解释一下这个Eager 加载示例吗?

单个方法(即扩展方法)之间的调用不明确

如何在 ASP.​NET Core 中使用 jquery

如何删除字符串的定义部分?

判断 asp.net mvc 4 应用程序中的 ssl 协议、密码和其他属性

如何防止 Azure 网站进入Hibernate 状态?

无法读取配置部分system.servicemodel,因为它缺少部分声明

ASP.net 页面在导入语句上出现错误,但我确实有参考?

System.Web.HttpContext 无法识别

IIS 7.5 上没有 asp.net 功能

问题映射 HttpHandler --> HTTP Error 404 Not Found

当用户使表单无效时单击取消按钮时,如何清除 MVC 客户端验证错误?

MVC5 身份验证中的......与主域之间的信任关系失败

在生产中使用 LocalDb 是否正常?

带有 ASP.NET WebMethod 的 Jquery AJAX 返回整个页面

SQLServer 与 StateServer 的 ASP.NET 会话状态性能

简单的 LINQ 和列表错误:WhereListIterator`1[Task]' to type 'System.Collections.Generic.List`1[Task]'

System.Threading.Tasks - 限制并发任务的数量

RegisterStartupScript 不适用于 ScriptManager、Updatepanel.这是为什么?

System.Web.Caching 还是 System.Runtime.Caching 更适合 .NET 4 Web 应用程序