一、Program文件: 
1.CreateWebHostBuilder():
  构建web服务
2.WebHost.CreateDefaulBuilder():
  使用默认配置,包括
  1.使用了Kestrel Web Server
  2.集成了IIS
  3.配置了Log
  4.创建了实现IConfiguration接口的对象,该对象可获取appsettings.json文件配置信息
3.UseStartup<Startup>()
  使用Startup类来配置web应用

Startup文件:
1.调用顺序是先ConfigureServices()后Configure(),由运行时调用。
2.ConfigureServices():
  将服务注册到容器中,可以是第三方组件
  配置依赖注入
  可直接在方法参数放入已经注入的配置,
  如:ConfigureServices(IConfiguration config),会通过注入的方式得到IConfiguration接口的实现,通过config.GetConnectionString()可以拿到appsetting.json的连接字符串配置信息,config.GetSection("ConnectionStrings").GetSection("ProviderName").Value则可以按一个节点一个节点下拿配置
3.Configure():
  配置http请求管道,比如:session,cookie
  将一个中间件组件添加到请求管道,例如:app.UseMvc()扩展方法将路由中间件添加到请求管道,并将MVC配置为默认处理程序。
  也可以自定义中间件

.net core内置依赖注入
在Startup文件的ConfigureServices()方法下
  1.services.AddSingleton(),创建单例对象
  2.services.AddTransient(),每次使用创建一个对象
  3.services.AddScoped(),一次http请求创建一个对象

四、 中间件
1.在Startup文件的Configure()方法下
  app.Use...(中间件配置参数),如:

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{   //添加用于将HTTP请求重定向到HTTPS的中间件。
  app.UseHttpsRedirection();   //为当前请求路径启用静态文件服务
  app.UseStaticFiles();   app.UseMvc(routes =>
  {
    routes.MapRoute(
    name: "default",
    template: "{controller=Home}/{action=Longin}/{id?}");
  });
}

2.自定义中间件,请参考我另一篇博文https://www.cnblogs.com/yijiayi/p/10964418.html

最新文章

  1. Maximo 7.5 集成方式 去掉主菜单
  2. Android背景渐变色(shape,gradient)
  3. 将excel数据导入到mysql的方法
  4. 腾讯云从零部署nodejs站点
  5. Form表单的操作
  6. 2014年值得学习的25个PS CS6教程(一)
  7. SmartGit STUDY 2
  8. UVa 10943 (数学 递推) How do you add?
  9. Android ImageView(纯java)
  10. POJ3080 - Blue Jeans(KMP+二分)
  11. 一看就懂ReactJS
  12. 如何使用Jquery获取Form表单中被选中的radio值
  13. JavaScript高级程序设计:第二章
  14. AspNet.OData 协议概述
  15. 2017寒假零基础学习Python系列之函数之 递归函数
  16. [js插件开发教程]实现一个比较完整的开源级选项卡插件
  17. RxJava2-后台执行耗时操作,实时通知 UI 更新(一)
  18. 洛谷P1516 青蛙的约会(扩展欧几里德)
  19. 【动态规划】Part1
  20. 自制TFT-Usart通信小项目资料打包

热门文章

  1. Vue3源码分析之 Ref 与 ReactiveEffect
  2. Lesson3——NumPy 数据类型
  3. js Array.prototype.slice.call(arguments,0) 理解
  4. ORM要用到的数组转对象和对象转数组函数
  5. 自动循环滚动ScrollView
  6. Python--操作列表
  7. Redis性能管理
  8. sbt修改源(国内优先)
  9. Maven下Java、JavaWeb约定标准项目结构
  10. [USACO4.2]工序安排Job Processing