在典型的MVC控制器中,只要所有参数都匹配,我们就可以将Json体与模型绑定:
[HttpPost]
public void PostPerson(Person p){
//stuff
}
然而,我注意到使用fiddler,如果我做这样的事情:
{
"name":,
"age": 12
}
控制器将自动返回InternalServerError。我希望能够返回自定义消息。如果是这种情况,我如何验证Json?
我最初认为无效的Json会导致Person对象变为NULL,所以我为它做了一个处理程序来返回一个自定义消息,但是在这里尝试之后,似乎并非如此。
答案 0 :(得分:0)
1)处理错误
我会查看这篇关于不同级别的错误处理的文章。 http://www.dotnettricks.com/learn/mvc/exception-or-error-handling-and-logging-in-mvc4
您可以捕获不同级别的错误,并返回不同的错误响应。
2)修正输入
还要考虑当系统的不同部分同意以给定格式(JSON)进行通信时,双方是否应该遵守?客户端向您发送损坏的JSON也是错误的吗?通过清理前端界面,几乎可以消除这种情况。