当前位置: 首页>>代码示例>>C#>>正文


C# IHttpRequest.ThrowIfNull方法代码示例

本文整理汇总了C#中IHttpRequest.ThrowIfNull方法的典型用法代码示例。如果您正苦于以下问题:C# IHttpRequest.ThrowIfNull方法的具体用法?C# IHttpRequest.ThrowIfNull怎么用?C# IHttpRequest.ThrowIfNull使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在IHttpRequest的用法示例。


在下文中一共展示了IHttpRequest.ThrowIfNull方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: ApplyResponseFilters

        /// <summary>
        /// Applies the response filters. Returns whether or not the request has been handled 
        /// and no more processing should be done.
        /// </summary>
        /// <returns></returns>
        public bool ApplyResponseFilters(IHttpRequest httpReq, IHttpResponse httpRes, object response)
        {
            httpReq.ThrowIfNull("httpReq");
            httpRes.ThrowIfNull("httpRes");

            using (Profiler.Current.Step("Executing Response Filters"))
            {
                var responseDto = response.GetResponseDto();
                var attributes = responseDto != null
                    ? FilterAttributeCache.GetResponseFilterAttributes(responseDto.GetType())
                    : null;

                //Exec all ResponseFilter attributes with Priority < 0
                var i = 0;
                if (attributes != null)
                {
                    for (; i < attributes.Length && attributes[i].Priority < 0; i++)
                    {
                        var attribute = attributes[i];
                        Container.AutoWire(attribute);
                        attribute.ResponseFilter(httpReq, httpRes, response);
                        Release(attribute);
                        if (httpRes.IsClosed) return httpRes.IsClosed;
                    }
                }

                //Exec global filters
                foreach (var responseFilter in GlobalResponseFilters)
                {
                    responseFilter(httpReq, httpRes, response);
                    if (httpRes.IsClosed) return httpRes.IsClosed;
                }

                //Exec remaining RequestFilter attributes with Priority >= 0
                if (attributes != null)
                {
                    for (; i < attributes.Length; i++)
                    {
                        var attribute = attributes[i];
                        Container.AutoWire(attribute);
                        attribute.ResponseFilter(httpReq, httpRes, response);
                        Release(attribute);
                        if (httpRes.IsClosed) return httpRes.IsClosed;
                    }
                }

                return httpRes.IsClosed;
            }
        }
开发者ID:remkoboschker,项目名称:ServiceStack,代码行数:54,代码来源:ServiceStackHost.Runtime.cs

示例2: ApplyResponseFilters

        /// <summary>
        /// Applies the response filters. Returns whether or not the request has been handled 
        /// and no more processing should be done.
        /// </summary>
        /// <returns></returns>
        public static bool ApplyResponseFilters(IHttpRequest httpReq, IHttpResponse httpRes, object responseDto)
        {
            httpReq.ThrowIfNull("httpReq");
            httpRes.ThrowIfNull("httpRes");

            using (Profiler.Current.Step("Executing Response Filters"))
            {
                foreach (var responseFilter in ResponseFilters)
                {
                    responseFilter(httpReq, httpRes, responseDto);
                    if (httpRes.IsClosed) break;
                }

                return httpRes.IsClosed;
            }
        }
开发者ID:sbeparey,项目名称:ServiceStack,代码行数:21,代码来源:EndpointHost.cs

示例3: ApplyResponseFilters

        /// <summary>
        /// Applies the response filters. Returns whether or not the request has been handled 
        /// and no more processing should be done.
        /// </summary>
        /// <returns></returns>
        public static bool ApplyResponseFilters(IHttpRequest httpReq, IHttpResponse httpRes, object responseDto)
        {
            httpReq.ThrowIfNull("httpReq");
            httpRes.ThrowIfNull("httpRes");

            using (Profiler.Current.Step("Executing Response Filters"))
            {
                foreach (var responseFilter in ResponseFilters)
                {
                    responseFilter(httpReq, httpRes, responseDto);
                    if (httpRes.IsClosed) break;
                }

                if (responseDto != null)
                {
                    var httpResult = responseDto as IHttpResult;
                    if (httpResult != null)
                        responseDto = httpResult.Response;

                    if (responseDto != null)
                    {
                        var attributes = FilterAttributeCache.GetResponseFilterAttributes(responseDto.GetType());
                        foreach (var attribute in attributes)
                        {
                            EndpointHost.ServiceManager.Container.AutoWire(attribute);
                            attribute.ResponseFilter(httpReq, httpRes, responseDto);
                            if (EndpointHost.AppHost != null) //tests
                                EndpointHost.AppHost.Release(attribute);
                            if (httpRes.IsClosed) break;
                        }
                    }
                }

                return httpRes.IsClosed;
            }
        }
开发者ID:niemyjski,项目名称:ServiceStack,代码行数:41,代码来源:EndpointHost.cs

示例4: ApplyRequestFilters

        /// <summary>
        /// Applies the request filters. Returns whether or not the request has been handled 
        /// and no more processing should be done.
        /// </summary>
        /// <returns></returns>
        public static bool ApplyRequestFilters(IHttpRequest httpReq, IHttpResponse httpRes, object requestDto)
        {
            httpReq.ThrowIfNull("httpReq");
            httpRes.ThrowIfNull("httpRes");

            using (Profiler.Current.Step("Executing Request Filters"))
            {
                //Exec all RequestFilter attributes with Priority < 0
                var attributes = FilterAttributeCache.GetRequestFilterAttributes(requestDto.GetType());
                var i = 0;
                for (; i < attributes.Length && attributes[i].Priority < 0; i++)
                {
                    var attribute = attributes[i];
                    ServiceManager.Container.AutoWire(attribute);
                    attribute.RequestFilter(httpReq, httpRes, requestDto);
                    if (AppHost != null) //tests
                        AppHost.Release(attribute);
                    if (httpRes.IsClosed) return httpRes.IsClosed;
                }

                //Exec global filters
                foreach (var requestFilter in RequestFilters)
                {
                    requestFilter(httpReq, httpRes, requestDto);
                    if (httpRes.IsClosed) return httpRes.IsClosed;
                }

                //Exec remaining RequestFilter attributes with Priority >= 0
                for (; i < attributes.Length; i++)
                {
                    var attribute = attributes[i];
                    ServiceManager.Container.AutoWire(attribute);
                    attribute.RequestFilter(httpReq, httpRes, requestDto);
                    if (AppHost != null) //tests
                        AppHost.Release(attribute);
                    if (httpRes.IsClosed) return httpRes.IsClosed;
                }

                return httpRes.IsClosed;
            }
        }
开发者ID:cyberprune,项目名称:ServiceStack,代码行数:46,代码来源:EndpointHost.cs

示例5: ApplyResponseFilters

        /// <summary>
        /// Applies the response filters. Returns whether or not the request has been handled 
        /// and no more processing should be done.
        /// </summary>
        /// <returns></returns>
        public static bool ApplyResponseFilters(IHttpRequest httpReq, IHttpResponse httpRes, object responseDto)
        {
            httpReq.ThrowIfNull("httpReq");
            httpRes.ThrowIfNull("httpRes");

            foreach (var responseFilter in ResponseFilters)
            {
                responseFilter(httpReq, httpRes, responseDto);
                if (httpRes.IsClosed) break;
            }

            return httpRes.IsClosed;
        }
开发者ID:benaston,项目名称:ServiceStack,代码行数:18,代码来源:EndpointHost.cs

示例6: ApplyRequestFilters

        /// <summary>
        /// Applies the request filters. Returns whether or not the request has been handled 
        /// and no more processing should be done.
        /// </summary>
        /// <returns></returns>
        public static bool ApplyRequestFilters(IHttpRequest httpReq, IHttpResponse httpRes, object requestDto)
        {
            httpReq.ThrowIfNull("httpReq");
            httpRes.ThrowIfNull("httpRes");

            using (Profiler.Current.Step("Executing Request Filters"))
            {
                foreach (var requestFilter in RequestFilters)
                {
                    requestFilter(httpReq, httpRes, requestDto);
                    if (httpRes.IsClosed) break;
                }

                var attributes = FilterAttributeCache.GetRequestFilterAttributes(requestDto.GetType());
                foreach (var attribute in attributes)
                {
                    attribute.RequestFilter(httpReq, httpRes, requestDto);
                    if (httpRes.IsClosed) break;
                }

                return httpRes.IsClosed;
            }
        }
开发者ID:austinvernsonger,项目名称:ServiceStack,代码行数:28,代码来源:EndpointHost.cs


注:本文中的IHttpRequest.ThrowIfNull方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。