Example #1
0
 /// <summary>
 /// 在路由中间件
 /// </summary>
 /// <param name="middleware">中间件</param>
 /// <returns></returns>
 public IRouteGroup Middleware(Action <IRequest, IResponse, IFilterChain <IRequest, IResponse> > middleware)
 {
     options.Middleware(middleware);
     for (int i = 0; i < routes.Count; i++)
     {
         routes[i].Middleware(middleware);
     }
     return(this);
 }
Example #2
0
 /// <summary>
 /// 添加路由中间件
 /// </summary>
 /// <param name="middleware">中间件</param>
 /// <param name="priority">优先级(值越小越优先)</param>
 /// <returns>当前路由组实例</returns>
 public IRouteGroup Middleware(Action <IRequest, IResponse, Action <IRequest, IResponse> > middleware, int priority = int.MaxValue)
 {
     Guard.Requires <ArgumentNullException>(middleware != null);
     options.Middleware(middleware);
     for (var i = 0; i < routes.Count; i++)
     {
         routes[i].Middleware(middleware, priority);
     }
     return(this);
 }
Example #3
0
 /// <summary>
 /// 合并中间件
 /// </summary>
 /// <param name="options"></param>
 protected void MergeMiddleware(RouteOptions options)
 {
     if (middleware == null)
     {
         return;
     }
     IFilter <IRequest, IResponse>[] filters = middleware.FilterList;
     for (int i = 0; i < filters.Length; i++)
     {
         options.Middleware(filters[i]);
     }
 }
Example #4
0
        /// <summary>
        /// 合并中间件
        /// </summary>
        /// <param name="options">外部路由配置</param>
        private void MergeMiddleware(RouteOptions options)
        {
            if (middleware == null)
            {
                return;
            }
            var filters = middleware.FilterList;

            for (var i = 0; i < filters.Length; i++)
            {
                options.Middleware(filters[i]);
            }
        }
Example #5
0
 /// <summary>
 /// 路由中间件
 /// </summary>
 /// <param name="middleware"></param>
 /// <returns></returns>
 public IRoute Middleware(Action <IRequest, IResponse, Action <IRequest, IResponse> > middleware)
 {
     options.Middleware(middleware);
     return(this);
 }
Example #6
0
File: Route.cs Project: U3DC/CatLib
 /// <summary>
 /// 路由中间件
 /// </summary>
 /// <param name="middleware">执行的处理函数</param>
 /// <returns>路由条目实例</returns>
 public IRoute Middleware(Action <IRequest, IResponse, Action <IRequest, IResponse> > middleware)
 {
     Guard.Requires <ArgumentNullException>(middleware != null);
     options.Middleware(middleware);
     return(this);
 }
Example #7
0
 /// <summary>
 /// 路由中间件
 /// </summary>
 /// <param name="middleware">执行的处理函数</param>
 /// <param name="priority">优先级(值越小越优先)</param>
 /// <returns>路由条目实例</returns>
 public IRoute Middleware(Action <IRequest, IResponse, Action <IRequest, IResponse> > middleware, int priority = int.MaxValue)
 {
     Guard.Requires <ArgumentNullException>(middleware != null);
     options.Middleware(middleware, priority);
     return(this);
 }