为什么我按照视频操作后运行,调试得到的还是"Hello World",而且端口号也不是和视频中的一样,搞不懂,操作都是一样的。
请求通道都是由IApplicationBuilder 创建
每个中间件都可以截获,修改,传递请求对象,输出响应对象
中间件可以短路处理,直接向前端输出响应对象
所有中间件公用一个请求通道
startup.cs:依赖注入 中间件 middleware 请求通道 request pipeline
program.cs : mian function, 入口
WebHost -
CreateDefaultBuilder : 1. 加载主机配置信息
2. 配置日志记录
3. 设置web 服务器
4. 设置asp.net core 应用程序托管
Startup: 1.在ConfigureServices 注入服务组件依赖
services.AddMvc();
2. 在configure 方法中创建中间件,设置请求通道
request pipline: 访问网站(Http 请求)
检查&处理http请求(登录,Url 正确,访问出错抛出异常)
交由中间件处理
中间件:组装到程序管道中用来处理请求和响应的软件
MVC组件是.net core的自带组件,使用组件前,需要在Startup.CS中先注册各种组件。startup.cs就是用来管理依赖项用的,只有经过注册的组件才能调用
注册方法:Services.AddMvc();
startup.cd的第二个方法,Configure,用来管理请求通道
ConfigureServices 用于管理组件依赖
program.cs
主函数main里的CreateDefaultBuilder运行并创建了一个虚拟网站托管主机
startup.cs
在ConfigureServices方法中注入各种组件的依赖
在Configure方法,配置http请求通道request pipline
中间件Middelware是组装到应用管道中,用来处理请求和响应的软件
2-3program与startup
这两个cs文件是asp.net系统中最重要的组成部分,分别主管程序入口及系统生命周期,startup.cs集中管理了系统的依赖注入,中间件midware,请求通道request pipeline,学习一门新技术最好的方法就是从其启动入口开始。asp.net core 程序入口就是program.cs中的主函数main
program.cs文件main函数,.net core应用程序实际上就是个console app,createdefaultbuilder创建并运行一个虚拟网站托管主【加载主机和应用程序的配置信息】【配置日志记录】【设置web服务器】【设置.netcore应用程序的托管形式】
startup.cs是.netcore sdk默认生成的,在configureservices里注入各种服务组件的依赖【在.net运行时调用,.net core 提供了内置的ioc容器,该方法就是将自己的服务注入到ioc容器中】,在configure中设置中间件midware,请求通道request pipeline【配置系统的http请求通道,检查处理http请求,交由中间件middleware处理,该方法的环境变量由右键解决方案属性debug中设置或是properties文件夹中launchsetting.js中设置】。
中间件/请求通道:
基本通过IApplicationBuilder创建
每个中间件都可以截获、修改、并且传递请求对象,输出响应对象
在特定情况下,某些中间件可以做短路处理,直接向前端输出相应对象
将要学习