NetCore3.0实现自定义IOC容器注入
在之前的 ASP.NET MVC实现依赖注入 一文中,通过替换默认的ControllerFactory来达到对Controller生命周期的拦截,实现自定义的对象注入,在NetCore3.0中需要重新实现,步骤如下: 1.获取所有相关业务程序集aaa public static List<Assembly> GetFrameworkAssemblys () { var list = new List<Assembly>(); var deps = DependencyContext.Default; var libs = deps.CompileLibraries; foreach ( var lib in libs) { if (!lib.Serviceable && lib.Type != "package" && lib.Name.StartsWith( "FastCloud" )) { var assembly = AssemblyLoadContext.Default.LoadFromAssemblyName( new AssemblyName(lib.Name)); list.Add(assembly); } } return list; } 2.对所有Component组件注册 public class InjectContext { private static