POST方法的参数始终为null

时间:2017-11-03 09:25:13

标签: c# json asp.net-core

我正在开发一个ASP.Net Core 2 Web Api,我不知道为什么我的POST方法参数为null。

我已经用PostMan测试了它:

enter image description here

我得到proOrds参数为null:

[HttpPost("[action]")]
public void Save([FromBody] List<Models.ProductionOrderPresentation> proOrds)

这是我发送的JSON:

[{
    "ProductionOrderId": 0,
    "ProductId": 7,
    "LawId": 0,
    "Name": "rrrr",
    "Created": null,
    "Phase": 0,
    "NumItems": 123,
    "Reduction": 4444
}]

课程是:

public class ProductionOrderPresentation
{
    public int ProductionOrderId { get; set; }
    public int ProductId { get; set; }
    public byte LawId { get; set; }
    public string Name { get; set; }
    public string Created { get; set; }
    public byte Phase { get; set; }
    public int NumItems { get; set; }
    public byte Reduction { get; set; }
}

有什么不对?

1 个答案:

答案 0 :(得分:1)

您的Reduction列的类型为byte,其范围为0-255,但您将4444作为该列的值传递。因此,您发布的项目并不真正映射到您的模型类,因此被asp.net忽略。