为什么JsonObject Null?

时间:2017-04-28 05:14:44

标签: c# json asp.net-mvc postman

我正在从Postman发送一个Post函数给这个函数

[System.Web.Http.AcceptVerbs("GET", "POST")]
    [System.Web.Http.HttpPost]
    public string saveOrder([FromBody]JObject json)
    {
        //OrderSpecifications orderSpecifics = JsonConvert.DeserializeObject<OrderSpecifications>(json.ToString());

        var dictionary = new Dictionary<string, string>();
        //dictionary.Add("result", orderSpecifics.FirstName);

        return json.ToString();
    }

这是我的邮递员的屏幕截图。

Postman Screenshot

为什么函数中收到的JSON对象为NULL?

2 个答案:

答案 0 :(得分:1)

您在模型绑定中遇到问题。 ASP.Net无法将HTML主体转换为服务器端预期的模型。查看这篇文章。

WebAPI POST [FromBody] not binding

之后,还要检查一下有关模型绑定的最佳实践。

Best practices for debugging ASP.NET MVC Binding

答案 1 :(得分:0)

我发现了问题。 问题是我发送的是datetime对象,因为它也在json中。 当我在json中改变了以下的变量。它运作良好。

"OrderDateTime":"2017-01-01 12:00:00.000",
"ConfirmedDateTime":"2017-01-01 12:00:00.000",
"DeliveryTime":"14:32",
"DeliveryMinutes":"12:32"

PS:在Json解析器中检查你的Json,检查它是否是正确的格式,如果其他一切似乎都没问题。