netcore 依赖注入的一些奇淫技巧

从Iservicecollection中直接获取实例

    var diagnosticListener = (DiagnosticListener)services
                  .LastOrDefault(d => d.ServiceType == typeof(DiagnosticListener))
                  ?.ImplementationInstance;

使用serviceprovider创建没有注册的对象

        var listener = ActivatorUtilities.CreateInstance<MiddlewareDiagnosticListener>(this.provider);

发表评论