BN089-BS开发框架MVC4版/source20131023/Zephyr.Web/App_Start/WebApiConfig.cs

(完整代码) 1KB

using System.Reflection;
using System.Web.Http;
using System.Web.Http.Dispatcher;
using Zephyr.Core;

namespace Zephyr.Web
{
    public static class WebApiConfig
    {
        public static void Register(HttpConfiguration config)
        {
            //Change ControllerSuffix from default string "Controller" to "ApiController"
            var suffix = typeof(DefaultHttpControllerSelector).GetField("ControllerSuffix", BindingFlags.Static | BindingFlags.Public);
            if (suffix != null) suffix.SetValue(null, "ApiController");
 
             //支持命名空间
            config.Services.Replace(typeof(IHttpControllerSelector), 
                new NamespaceHttpControllerSelector(config));
 
            config.ParameterBindingRules.Insert(0, param => {
                if (param.ParameterType == typeof(RequestWrapper))
                    return new RequestWrapperParameterBinding(param);
               
                return null;
            });

           config.Filters.Add(new AuthorizeAttribute());
           config.Filters.Add(new WebApiExceptionFilter());
           config.Filters.Add(new WebApiDisposeFilter());
        }
    }
}

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。