在Web API 2中返回400错误请求响应的错误消息列表

时间:2014-09-24 04:49:34

标签: asp.net-web-api webapp2

如何从带有400 Bad Request状态代码的Web Api 2返回错误消息列表?请参阅下面的示例。通常我使用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);
}

1 个答案:

答案 0 :(得分:1)

根据Mike的评论,我将添加一个实现IHttpActionResult的新类,以返回400 Bad Request的错误消息列表。谢谢Mark