internal IHttpActionResult GetInnerActionResult(HttpRequestMessage request) { WebApiRequestHeaders headers = new WebApiRequestHeaders(request.Headers); if (RequestPreferenceHelpers.RequestPrefersReturnNoContent(headers)) { return(new StatusCodeResult(HttpStatusCode.NoContent, request)); } else { return(_innerResult); } }
/// <summary> /// Initializes a new instance of the <see cref="ODataQueryOptions"/> class based on the incoming request and some metadata information from /// the <see cref="ODataQueryContext"/>. /// </summary> /// <param name="context">The <see cref="ODataQueryContext"/> which contains the <see cref="IEdmModel"/> and some type information.</param> /// <param name="request">The incoming request message.</param> /// <remarks> /// This signature uses types that are AspNetCore-specific. /// While the AspNet version of this class makes the HttpRequest available, AspNetCore /// is unhappy when it sees the HttpRequest during validation so HttpRequest is not part /// of the public Api for ODataQueryOptions. /// </remarks> public ODataQueryOptions(ODataQueryContext context, HttpRequest request) { if (context == null) { throw Error.ArgumentNull("context"); } if (request == null) { throw Error.ArgumentNull("request"); } Contract.Assert(context.RequestContainer == null); context.RequestContainer = request.GetRequestContainer(); Context = context; InternalRequest = new WebApiRequestMessage(request); InternalHeaders = new WebApiRequestHeaders(request.Headers); Initialize(context); }