我在应用程序中使用ODataController,当我们将模型对象作为请求数据传递给http post方法时,它作为空值传递。
以下值将添加到标题中:
content-type: application/json
accept-type : application/json
下面的屏幕截图
我们正在使用邮递员休息客户端插件检查请求和响应流。
控制器代码:
[ControllerName("Bills")]
public class BillsController : ODataController
{
[HttpPost]
[ODataRoute]
public IHttpActionResult Post(Bills bills)
{
List<Bills> projectList = new List<Bills>();
projectList = billingPostgresBusinessService.GetAllBills();
return Ok(projectList);
}
}
PostMan数据:
Url : https://localhost:44367/odata/v1/Bills
模型类
public class Bills
{
public Bills()
{
}
[Key]
public string ProjectId { get; set; }
public string ProjectName { get; set; }
public List<ProjectDetail> Details { get; set; }
}
public class ProjectDetail
{
public string AmountDueDate { get; set; }
public string TotalDueDate { get; set; }
}
请求数据:
{
"projectId": 1000,
"projectName": "Project0",
"details": [
{
"amountDueDate": "1/21/2015",
"totalDueDate": "1/25/2015"
},
{
"amountDueDate": "12/11/2011",
"totalDueDate": "12/15/2011"
}
]
}
更新:
当我如下更改标题时,它工作正常
'Content-Type': 'application/x-www-form-urlencoded'
我们如何将application / json作为内容类型传递,以使发布操作应正常工作