【发布时间】:2014-11-18 11:14:33
【问题描述】:
如何从 Web Api 2 返回带有 400 Bad Request 状态代码的错误消息列表?请参见下面的示例。通常我使用 BadRequest 方法来返回 400 状态码,但它在接受字符串集合时没有任何重载。它有一个接受 ModelStateDisctionary 的重载。这是否意味着我必须从错误消息列表中创建 ModelStateDictionary?
[Route("")]
[HttpPost]
public IHttpActionResult Add(Object data)
{
var valid = _serviceLayer.Validate(data);
if(!valid)
{
var errors = valid.Errors;
// errors is an array of string
// How do I return errors with Bad Request status code here?
}
var updatedObject = _serviceLayer.Save(data);
return Ok(updatedObject);
}
【问题讨论】:
-
POST成功返回的正常对象类型是什么?
-
返回 Ok(UpdatedObject);
-
您将需要实现自己的实现 IHttpActionResult 的类:stackoverflow.com/questions/20139621/…