C#MVC验证jsonString发布到Controller Action

时间:2017-01-18 04:03:33

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

在典型的MVC控制器中,只要所有参数都匹配,我们就可以将Json体与模型绑定:

[HttpPost]
public void PostPerson(Person p){
    //stuff
}

然而,我注意到使用fiddler,如果我做这样的事情:

{
   "name":,
   "age": 12
}  

控制器将自动返回InternalServerError。我希望能够返回自定义消息。如果是这种情况,我如何验证Json?

我最初认为无效的Json会导致Person对象变为NULL,所以我为它做了一个处理程序来返回一个自定义消息,但是在这里尝试之后,似乎并非如此。

1 个答案:

答案 0 :(得分:0)

1)处理错误

我会查看这篇关于不同级别的错误处理的文章。 http://www.dotnettricks.com/learn/mvc/exception-or-error-handling-and-logging-in-mvc4

您可以捕获不同级别的错误,并返回不同的错误响应。

2)修正输入

还要考虑当系统的不同部分同意以给定格式(JSON)进行通信时,双方是否应该遵守?客户端向您发送损坏的JSON也是错误的吗?通过清理前端界面,几乎可以消除这种情况。