是否可以让我的 API 始终处理给定的异常?在每一个方法中,我都在捕获 DbEntityValidationExceptions 和 ValidationExceptions。每个方法都以相同的方式实现这些捕获。有没有办法委派我的 API 或项目在任何时候抛出这些错误时都可以使用的路由?
这是每个方法的示例(再次具体来说,这是一个 APIController):
try
{
//Do something
}
catch(ValidationException ex)
{
var errors = ErrorsAdd(new[] { ex.ValidationResult });
throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, errors, _format));
}
catch (DbEntityValidationException ex)
{
var errors = ErrorsAdd(ex.EntityValidationErrors);
throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.NotFound, errors, _format));
}