Asp.net web api 如何将webapi请求读取为正确的json格式以填充webapi中的对象

Asp.net web api 如何将webapi请求读取为正确的json格式以填充webapi中的对象,asp.net-web-api,httpresponse,Asp.net Web Api,Httpresponse,如何使此webapi请求负载作为webapi内的普通json对象读取。我确信我必须以某种方式调整格式,但我不熟悉如何读取和/或切换它以填充webapi中的自定义对象 这是一个chrome开发屏幕,展示了它是如何实现的 下面是一些fiddler屏幕截图 我的api。。。我正在尝试不同的方法,但底线是我需要它返回一个字节数组,因为要下载一个文件 这是webapi [Route("api/excel/DownloadTopdayTrades2/")] [HttpPost]

如何使此webapi请求负载作为webapi内的普通json对象读取。我确信我必须以某种方式调整格式,但我不熟悉如何读取和/或切换它以填充webapi中的自定义对象

这是一个chrome开发屏幕,展示了它是如何实现的

下面是一些fiddler屏幕截图

我的api。。。我正在尝试不同的方法,但底线是我需要它返回一个字节数组,因为要下载一个文件

这是webapi

        [Route("api/excel/DownloadTopdayTrades2/")]
    [HttpPost]
    public HttpResponseMessage DownloadTopdayTrades2([FromBody]ListTradeDetailDTO trades)
    {

您有多个解决方案,可以读取请求主体并直接绑定到C#class
var result=wait request.Content.ReadAsAsync()或您可以将其读入
动态
变量

dynamic obj = await Request.Content.ReadAsAsync<JObject>();
var y = obj.trades[0].AccountNumber;
dynamic obj=wait Request.Content.ReadAsAsync();
var y=对象交易[0]。账号;

编辑:
public byte[]downloadtodaytrades([FromBody]IEnumerable trades)
读取body请求中的内容

你能显示处理请求的控制器的代码吗?我在控制器中添加了我在下面编辑了我的评论,我认为你缺少[FromBody]属性!我尝试了你的编辑,但它为空。至于动态变量的例子,我得到等待必须是task,问题是你有一个对象,在这个对象内你有交易属性!您必须创建一个新的DTO,该DTO具有类型为List的属性,然后序列化才能工作
public类MyDTO{public List trades{get;set;}}}public byte[]downloadtodaytrades([FromBody]MyDTO trades)
您必须使用属性交易创建一个新的DTO,然后更改操作签名!试着像这样读取表单日期
httpresponsemessagedownloadtopdaytrades2(FormDataCollection formData)
没问题,别忘了更新我的答案!)
var dto=JsonConvert.DeserializeObject(json)尝试这种方式,我假设您使用的是Newtonsoft Json库