BadRequest
上可用的ApiController
方法只接受字符串:
// Summary:
// Creates an System.Web.Http.Results.ErrorMessageResult (400 Bad Request) with
// the specified error message.
//
// Parameters:
// message:
// The user-visible error message.
//
// Returns:
// An System.Web.Http.Results.InvalidModelStateResult with the specified model
// state.
protected internal virtual BadRequestErrorMessageResult BadRequest(string message);
为什么没有接受自定义错误模型T的重载?
例如,我可能想要返回一个代码以及消息:
{
message: "Error message",
code: "1000",
}
我可以做以下但我怀疑必须有一个潜在的原因(可能符合RESTful标准?):
return Content(HttpStatusCode.BadRequest, errorModel);
答案 0 :(得分:7)
不确定这是否仍然相关,因为问题已超过2年...... 不过,这样做的方法确实是使用
return Content(HttpStatusCode.BadRequest, errorModel);
使用标准化的错误模型来包含详细信息实际上是一种很好的做法。另见:API Best Practices: Response Handling