調査目的で、ASP.NET Core MVC とかが DI コンテナに登録したサービスに処理を挟み込みたいことがある。そんな時は、下記のようなクラスと拡張メソッドを用意。 internal class Decorator<TService> { public TService Instance { get; set; } public Decorator(TService instance) { Instance = instance; } } internal class Decorator<TService, TImpl> : Decorator<TService> where TImpl : class, TService { public Decorator(TImpl instance) : base(instance) { } } internal class Disposab