服务注册
依赖注入的生命周期
- Transient:每次被其他类或方法请求都会创建新的实例
- Scoped:每次 Web 请求只创建一个实例
- Singleton:一旦被创建实例,就会一直使用这个实例,直到应用停止
示例:IWelcomeService 的注册和使用
public void ConfigureServices(IServiceCollection services){services.AddSingleton<IWelcomeService, WelcomeService>();}public void Configure(IApplicationBuilder app,IHostingEnvironment env,IWelcomeService welcomeService){...app.Run(async (context) =>{var welcome = welcomeService.GetMessage();await context.Response.WriteAsync(welcome);});}
管道和中间件
例如:
- Logger 记录请求信息
- 授权根据 cookie 或 token 进行权限判定
- 路由根据请求 URL 确定调用哪个类的哪个方法
- 成功响应,原路返回 JSON 或 HTML

