public HttpResponseMessage Post(HttpError_Todo todo) { if (!ModelState.IsValid) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)); } switch (todo.ErrorType) { case ErrorType.ThrowExceptionInAction: throw new Exception("ThrowExceptionInAction"); case ErrorType.ThrowHttpResponseExceptionInAction: throw new HttpResponseException( this.Request.CreateErrorResponse( HttpStatusCode.NotFound, new Exception("ThrowHttpResponseExceptionInAction"))); case ErrorType.ResponseErrorResponseInAction: return(this.Request.CreateErrorResponse( HttpStatusCode.NotFound, new Exception("ResponseErrorResponseInAction"))); case ErrorType.ReturnODataErrorResponseInAction: return(this.Request.CreateErrorResponse(HttpStatusCode.InternalServerError, new ODataError() { Message = "ReturnODataErrorResponseInActionMessage", ErrorCode = "ReturnODataErrorResponseInActionCode", InnerError = new ODataInnerError(new Exception("ReturnODataErrorResponseInActionException")) })); case ErrorType.ResponseHttpErrorResponseInAction: return (this.Request.CreateResponse <HttpError>( HttpStatusCode.NotFound, new HttpError("ResponseHttpErrorResponseInAction"))); default: return(null); } }
public HttpResponseMessage Post(HttpError_Todo todo) { if (!ModelState.IsValid) { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState); } switch (todo.ErrorType) { case ErrorType.ThrowExceptionInAction: throw new Exception("ThrowExceptionInAction"); case ErrorType.ThrowHttpResponseExceptionInAction: throw new HttpResponseException( this.Request.CreateErrorResponse( HttpStatusCode.NotFound, new Exception("ThrowHttpResponseExceptionInAction"))); case ErrorType.ResponseErrorResponseInAction: return this.Request.CreateErrorResponse( HttpStatusCode.NotFound, new Exception("ResponseErrorResponseInAction")); case ErrorType.ReturnODataErrorResponseInAction: return this.Request.CreateErrorResponse(HttpStatusCode.InternalServerError, new Microsoft.Data.OData.ODataError() { Message = "ReturnODataErrorResponseInActionMessage", ErrorCode = "ReturnODataErrorResponseInActionCode", InnerError = new Microsoft.Data.OData.ODataInnerError(new Exception("ReturnODataErrorResponseInActionException")) }); case ErrorType.ResponseHttpErrorResponseInAction: return this.Request.CreateResponse<HttpError>( HttpStatusCode.NotFound, new HttpError("ResponseHttpErrorResponseInAction")); default: return null; } }