zoukankan      html  css  js  c++  java
  • FeatureProviders

     /// <summary>
            /// Adds the minimum essential MVC services to the specified <see cref="IServiceCollection" />. Additional services
            /// including MVC's support for authorization, formatters, and validation must be added separately using the
            /// <see cref="IMvcCoreBuilder"/> returned from this method.
            /// </summary>
            /// <param name="services">The <see cref="IServiceCollection" /> to add services to.</param>
            /// <returns>An <see cref="IMvcCoreBuilder"/> that can be used to further configure the MVC services.</returns>
            /// <remarks>
            /// The <see cref="MvcCoreServiceCollectionExtensions.AddMvcCore(IServiceCollection)"/> approach for configuring
            /// MVC is provided for experienced MVC developers who wish to have full control over the set of default services
            /// registered. <see cref="MvcCoreServiceCollectionExtensions.AddMvcCore(IServiceCollection)"/> will register
            /// the minimum set of services necessary to route requests and invoke controllers. It is not expected that any
            /// application will satisfy its requirements with just a call to
            /// <see cref="MvcCoreServiceCollectionExtensions.AddMvcCore(IServiceCollection)"/>. Additional configuration using the
            /// <see cref="IMvcCoreBuilder"/> will be required.
            /// </remarks>
            public static IMvcCoreBuilder AddMvcCore(this IServiceCollection services)
            {
                if (services == null)
                {
                    throw new ArgumentNullException(nameof(services));
                }
    
                var partManager = GetApplicationPartManager(services);
                services.TryAddSingleton(partManager);
    
                ConfigureDefaultFeatureProviders(partManager);
                ConfigureDefaultServices(services);
                AddMvcCoreServices(services);
    
                var builder = new MvcCoreBuilder(services, partManager);
    
                return builder;
            }
    
            private static void ConfigureDefaultFeatureProviders(ApplicationPartManager manager)
            {
                if (!manager.FeatureProviders.OfType<ControllerFeatureProvider>().Any())
                {
                    manager.FeatureProviders.Add(new ControllerFeatureProvider());
                }
            }
  • 相关阅读:
    泛型接口协变和抗变
    泛型类功能
    泛型结构
    using 关键字给类和名称空间指定别名
    sqlite创建数据库问题
    sqlite命令
    必须输入大于0的整数
    最近在看c#本质论和B站上对应这本书的视频
    Linux系统管理笔记
    创建圆形类,其中包括set,get方法
  • 原文地址:https://www.cnblogs.com/871735097-/p/12121236.html
Copyright © 2011-2022 走看看