asp.net-core – 如何获取ASP.NET Core中的中间件列表

如何获取活动中间件列表?
如何获取特定URL的中间件列表(每个URL可能有一组不同的中间件添加到管道中)?

我想知道使用一些常见的构建器扩展来添加哪些中间件,如UseMvc()或app.UseIdentity();

我知道我可以检查每个扩展的源代码.是否有运行时方法获取此信息?

解决方法

不,你不能.当您向管道添加中间件时,它将被解析为Func< RequestDelegate,RequestDelegate>.组件保存在 ApplicationBuilder实现的私有字段中.然而,您可以使用一些反射魔法来烘焙扩展方法来确定实际的中间件类型,但这并非无足轻重.

相关文章

本文将从上往下,循序渐进的介绍一系列相关.NET的概念,先从...
基于 .NET 的一个全新的、好用的 PHP SDK + Runtime: Pe...
.NET 异步工作原理介绍。
引子 .NET 6 开始初步引入 PGO。PGO 即 Profile Guided Opti...
前言 2021/4/8 .NET 6 Preview 3 发布,这个版本的改进大多来...
前言 开头防杠:.NET 的基础库、语言、运行时团队从来都是相...