C# 我们如何创建JSON对象[FromBody]并从现有webapi将其同步到另一个api?

C# 我们如何创建JSON对象[FromBody]并从现有webapi将其同步到另一个api?,c#,json,asp.net-web-api,http-post,C#,Json,Asp.net Web Api,Http Post,假设我的Employee对象通过Post来自客户端,我们通过[FromBody]属性在Webapi中接收它 我可以知道,如何通过再次转换为Json并将其发布到另一个webapi来传输此对象吗?来自此的响应将是整数值。我会将其发送回客户 此外,我正试图使其成为异步的 我尝试了数小时搜索各种网站和帖子,但都找不到解决方案 谢谢你的帮助:)谢谢 [HttpPost] 公共任务GetValue([FromBody]员工emp) { } 您可以使用它将对象转换为json using Newtonsoft.

假设我的Employee对象通过Post来自客户端,我们通过[FromBody]属性在Webapi中接收它

我可以知道,如何通过再次转换为Json并将其发布到另一个webapi来传输此对象吗?来自此的响应将是整数值。我会将其发送回客户

此外,我正试图使其成为异步的

我尝试了数小时搜索各种网站和帖子,但都找不到解决方案

谢谢你的帮助:)谢谢

[HttpPost]
公共任务GetValue([FromBody]员工emp)
{
}
您可以使用它将对象转换为json

using Newtonsoft.Json;

var jsonString = JsonConvert.SerializeObject(emp);
然后使用或使用调用外部web api


“我可以知道,如何通过再次转换为Json并将其发布到另一个webapi来传输此对象吗?”-您对此做过任何研究吗?通过JSON发送对象是一项非常常见的任务,因此在这个网站上有很多问题需要解决。是的,John,我做了我的研究,我知道,早在我尝试在WCF中使用DataContractJsonSerializer的时候,它就工作得很好。我尝试了一些方法,但这些程序集在WebAPI项目中不兼容。我不懂。我尝试了类似的方法,使用(var client=new HttpClient()){var mediaType=new MediaTypeHeaderValue(“application/json”);var jsonserializerSettings=new jsonserializerSettings();JsonNetFormatter无法解析-->//var jsonFormatter=new JsonNetFormatter(jsonserializerSettings.Add());查询“如何将JSON发布到C#中的服务器”的第一个Google结果产生了,我从中推断出来。请注意关于使用HttpClientFactory而不是使用(var client=new HttpClient())的部分注释无处不在。不,John,也许你是对的,我正在寻找使用client.PostAsync方法示例。我将在此处使用任务,这是不正确的,jsonstring不是HttpContent,在PostAsync中,HttpContent对象应作为第二个参数。@OptimuPrime请说明正确的方法。
using Newtonsoft.Json;

var jsonString = JsonConvert.SerializeObject(emp);
using (var client = new HttpClient())
{
    client.BaseAddress = new Uri("url");
    var result = await client.PostAsync("/endpoint", jsonString);

    // use below as you want
    string resultContent = await result.Content.ReadAsStringAsync();
}