using System; using System.Threading.Tasks; namespace FastGithub { /// /// 定义中间件管道创建者的接口 /// /// 中间件上下文 public interface IPipelineBuilder { /// /// 获取服务提供者 /// IServiceProvider AppServices { get; } /// /// 使用中间件 /// /// /// /// /// IPipelineBuilder Use() where TMiddleware : class, IMiddleware; /// /// 使用中间件 /// /// /// /// /// IPipelineBuilder Use(Func, Task> middleware); /// /// 使用中间件 /// /// 中间件 /// IPipelineBuilder Use(Func, InvokeDelegate> middleware); /// /// 创建所有中间件执行处理者 /// /// InvokeDelegate Build(); /// /// 使用默认配制创建新的PipelineBuilder /// /// IPipelineBuilder New(); } }