04 2020 档案
摘要:通过DefaultActionDescriptorCollectionProvider类,我们获取到了应用的Controller和Action相关信息 后面分析Action是如何执行的 通过IActionSelector找到对应的ActionDescriptor 然后调用IActionInvoker
阅读全文
摘要:创建完ApplicationModel后,调用ControllerActionDescriptorBuilder类的Build方法创建对应的ControllerActionDescriptor internal static class ControllerActionDescriptorBuild
阅读全文
摘要:AuthorizationApplicationModelProvider 该类主要添加授权认证的过滤器 先在Controller和Action中找到实现IAuthorizeData的特性,再根据IAuthorizeData创建AuthorizeFilter过滤器,把AuthorizeFilter添
阅读全文
摘要:前面讲到ApplicationModel对象,那接下来看看ApplicationModel /// <summary> /// A model for configuring controllers in an MVC application. /// </summary> [DebuggerDis
阅读全文
摘要:看下应用如何构建出对应的ActionDescriptor DefaultActionDescriptorCollectionProvider internal class DefaultActionDescriptorCollectionProvider : ActionDescriptorColl
阅读全文
摘要:我们先看下IApplicationBuilder接口的扩展方法UseMvc public static IApplicationBuilder UseMvc( this IApplicationBuilder app, Action<IRouteBuilder> configureRoutes) {
阅读全文
摘要:public class KestrelServer : IServer { private readonly List<(IConnectionListener, Task)> _transports = new List<(IConnectionListener, Task)>(); priva
阅读全文
摘要:EndpointRoute新的路由方案 public static class EndpointRoutingApplicationBuilderExtensions { private const string EndpointRouteBuilder = "__EndpointRouteBuil
阅读全文
摘要:先看下IApplicationBuilder的扩展方法 public static IApplicationBuilder UseRouter(this IApplicationBuilder builder, IRouter router) { if (builder == null) { thr
阅读全文
摘要:一、IFeatureCollection 表示Http特性的集合,该集合存放一些http相关特性,如IHttpRequestFeature、IHttpResponseFeature 当构建HttpContext、HttpRequest、HttpResponse对象时,会从这些特性里面解析构建对应的类
阅读全文
摘要:一、IApplicationBuilderFactory public interface IApplicationBuilderFactory { IApplicationBuilder CreateBuilder(IFeatureCollection serverFeatures); } pub
阅读全文
摘要:先看下如下的扩展方法 public static class GenericHostWebHostBuilderExtensions { public static IHostBuilder ConfigureWebHost(this IHostBuilder builder, Action<IWe
阅读全文
浙公网安备 33010602011771号