【ASP.NET Core】AddMvc和AddMvcCore的区别
发布时间:2020-12-16 09:18:35 所属栏目:asp.Net 来源:网络整理
导读:AddMvcCore() method only adds the core MVC services. AddMvc() method adds all the required MVC services. AddMvc() method calls AddMvcCore() method internally. AddMvcCore()更加简洁,只添加了MVC核心服务。 而AddMvc()添加了MVC所需要的所有组件
AddMvcCore()更加简洁,只添加了MVC核心服务。 而AddMvc()添加了MVC所需要的所有组件。 AddMvc()内部调用了AddMvcCore(),这也就使得AddMvcCore()更加重要。 ASP.Net是开源项目,>github地址 贴出AddMvc源码会更加清楚。
public static IMvcBuilder AddMvc(this IServiceCollection services) { if (services == null) { throw new ArgumentNullException(nameof(services)); } var builder = services.AddMvcCore(); // 从这里开始,都是以AddMvcCore()为基础进行添加的各种服务。 builder.AddApiExplorer(); builder.AddAuthorization(); AddDefaultFrameworkParts(builder.PartManager); // Order added affects options setup order // Default framework order builder.AddFormatterMappings(); builder.AddViews(); builder.AddRazorViewEngine(); builder.AddRazorPages(); builder.AddCacheTagHelper(); // +1 order builder.AddDataAnnotations(); // +1 order // +10 order builder.AddJsonFormatters(); builder.AddCors(); return new MvcBuilder(builder.Services,builder.PartManager); } ? AddMvcCore源码:
1 public static IMvcCoreBuilder AddMvcCore(this IServiceCollection services) 2 { 3 if (services == null) 4 { 5 throw new ArgumentNullException(nameof(services)); 6 } 7 8 var partManager = GetApplicationPartManager(services); 9 services.TryAddSingleton(partManager); 10 11 ConfigureDefaultFeatureProviders(partManager); 12 ConfigureDefaultServices(services); 13 AddMvcCoreServices(services); 14 15 var builder = new MvcCoreBuilder(services,partManager); 16 17 return builder; 18 } ? 转自油管>ASP NET Core AddMvc vs AddMvcCore (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 如何从ASP.NET MVC网站中生成可下载的c#类?
- 如何从ASP.NET变量中提供JavaScript变量数据?
- IdentityServer4 4.x版本 配置Scope的正确姿势
- asp.net-mvc – 在Umbraco 6.1.1 MVC 4中,如何使用继承自Um
- asp.net – 将linq连接到sql datacontext到业务层中的httpc
- asp.net-mvc – 如果value为空,在razor模板上放置一个空字符
- asp.net-mvc – 偶尔__RequestVerificationToken错误
- asp.net – .NET VirtualPathProviders和预编译
- asp.net – 如何从内容页面访问母版页控件
- 将mvc 5应用程序连接到Azure中的ACS?
推荐文章
站长推荐
- 动手造轮子:实现一个简单的依赖注入(三) --- 支
- 为什么在ASP.NET MVC中使用JsonResult时使用WCF
- 为什么ASP.NET页面在本地主机上比在生产服务器上
- asp.net-mvc – 如何在保留控制器名称的同时分解
- asp.net-core – 如何在IServiceCollection.Conf
- asp.net-mvc – MVC4捆绑使用Scripts.Render时速
- asp.net – LINQ – ‘无法翻译表达式’与以前使
- asp.net – 从下拉列表中选择OBJECT的问题
- asp.net-mvc – ASP.NET MVC Textarea HTML帮助器
- asp.net – 如何在生产.NET网站中更改Web引用?
热点阅读