使用AddScoped添加的服务不会存储在HttpContext变量中。AddScoped是ASP.NET Core中的一种服务生命周期,在每个HTTP请求期间,它会创建一个新的服务实例,并在整个请求期间重用该实例。它使用的是HttpContext.RequestServices来解析和管理服务实例,而不是直接存储在HttpContext变量中。
AddScoped适用于需要在每个请求期间共享同一个服务实例的情况,例如,数据库上下文或仓储类。它可以在整个请求期间多次使用同一个服务实例,以提高性能和避免资源浪费。
如果希望将服务存储在HttpContext变量中,可以使用AddHttpContextAccessor来注入HttpContext实例,并使用HttpContext.Items来存储和检索服务实例。这样可以确保服务在同一个HTTP请求的不同组件之间共享。
总结:
T-Day
云+社区技术沙龙[第14期]
云+社区沙龙online [国产数据库]
云+社区技术沙龙[第22期]
Elastic 中国开发者大会
云+社区技术沙龙[第27期]
云+社区沙龙online第5期[架构演进]
Techo Day
云+社区技术沙龙[第19期]
云+社区技术沙龙[第9期]
云+社区技术沙龙[第11期]
领取专属 10元无门槛券
手把手带您无忧上云