コード例 #1
0
        public virtual bool TryGetErrorResult(
            HttpException exception,
            ContentType responseFormat,
            out ResourceErrorActionResult actionResult
            )
        {
            if (FormatManager.Current.CanSerialize(responseFormat))
            {
                actionResult = new ResourceErrorActionResult(exception, responseFormat);
                return(true);
            }
            switch (responseFormat.MediaType)
            {
            case "application/octet-stream":
            case "application/x-www-form-urlencoded":
            case "text/html":
            case "*/*":
                actionResult = null;
                return(true);

            default:
                actionResult = null;
                return(false);
            }
        }
コード例 #2
0
                public override object Execute(ControllerContext controllerContext, IDictionary <string, object> parameters)
                {
                    HttpException             he = new HttpException((int)this.statusCode, this.message);
                    ResourceErrorActionResult rear;

                    if (!WebApiEnabledAttribute.TryGetErrorResult2(controllerContext.RequestContext, he, out rear))
                    {
                        rear = new ResourceErrorActionResult(new HttpException((int)this.statusCode, this.message), new ContentType("text/plain"));
                    }
                    return(rear);
                }
コード例 #3
0
 public virtual bool TryGetErrorResult(HttpException exception, ContentType responseFormat, out ResourceErrorActionResult actionResult) {
     if (FormatManager.Current.CanSerialize(responseFormat)) {
         actionResult = new ResourceErrorActionResult(exception, responseFormat);
         return true;
     }
     switch (responseFormat.MediaType) {
         case "application/octet-stream":
         case "application/x-www-form-urlencoded":
         case "text/html":
         case "*/*":
             actionResult = null;
             return true;
         default:
             actionResult = null;
             return false;
     }
 }
コード例 #4
0
 internal static bool TryGetErrorResult2(
     RequestContext requestContext,
     HttpException he,
     out ResourceErrorActionResult actionResult
     )
 {
     foreach (ContentType responseFormat in requestContext.GetResponseFormats())
     {
         WebApiEnabledAttribute dummy = new WebApiEnabledAttribute();
         if (dummy.TryGetErrorResult(he, responseFormat, out actionResult))
         {
             return(true);
         }
     }
     actionResult = null;
     return(false);
 }
コード例 #5
0
 internal static bool TryGetErrorResult2(RequestContext requestContext, HttpException he, out ResourceErrorActionResult actionResult)
 {
     foreach (ContentType responseFormat in requestContext.GetResponseFormats())
     {
         WebApiEnabledAttribute dummy = new WebApiEnabledAttribute();
         if (dummy.TryGetErrorResult(he, responseFormat, out actionResult))
         {
             return true;
         }
     }
     actionResult = null;
     return false;
 }
コード例 #6
0
 public override object Execute(ControllerContext controllerContext, IDictionary<string, object> parameters) {
     HttpException he = new HttpException((int)this.statusCode, this.message);
     ResourceErrorActionResult rear;
     if (!WebApiEnabledAttribute.TryGetErrorResult2(controllerContext.RequestContext, he, out rear)) {
         rear = new ResourceErrorActionResult(new HttpException((int)this.statusCode, this.message), new ContentType("text/plain"));
     }
     return rear;
 }
コード例 #7
0
 internal static bool TryGetErrorResult2(RequestContext requestContext, HttpException he, out ResourceErrorActionResult actionResult) {
     List<ContentType> responseFormats = requestContext.GetResponseFormats();
     for (int i = 0; i < responseFormats.Count; ++i) {
         ContentType responseFormat = responseFormats[i];
         WebApiEnabledAttribute dummy = new WebApiEnabledAttribute();
         if (dummy.TryGetErrorResult(he, responseFormat, out actionResult)) {
             return true;
         }
     }
     actionResult = null;
     return false;
 }
コード例 #8
0
        internal static bool TryGetErrorResult2(RequestContext requestContext, HttpException he, out ResourceErrorActionResult actionResult)
        {
            List <ContentType> responseFormats = requestContext.GetResponseFormats();

            for (int i = 0; i < responseFormats.Count; ++i)
            {
                ContentType            responseFormat = responseFormats[i];
                WebApiEnabledAttribute dummy          = new WebApiEnabledAttribute();
                if (dummy.TryGetErrorResult(he, responseFormat, out actionResult))
                {
                    return(true);
                }
            }
            actionResult = null;
            return(false);
        }