Example #1
0
        /// <summary>
        /// 尝试根据当前请求,获取一个有效的Action,并返回ActionHandler
        /// 此方法可以在HttpModule中使用,用于替代httpHandler的映射配置
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        public static IHttpHandler TryGetHandler(HttpContext context)
        {
            string vPath = UrlHelper.GetRealVirtualPath(context, context.Request.FilePath);

            InvokeInfo vkInfo = ReflectionHelper.GetActionInvokeInfo(vPath);

            if (vkInfo == null)
            {
                return(null);
            }

            return(ActionHandler.CreateHandler(vkInfo));
        }