繁体   English   中英

使用autofac初始化类型时注册ASP.NET MVC 3控制器

[英]Register ASP.NET MVC 3 controllers when initializing type with autofac

我正在使用Autofac注册我的asp.net mvc 3 Web应用程序的控制器。 目前,我必须加载包含控制器(插件)的DLL,然后再注册类型。 现在,问题出在我有一个PluginLoader类,该类将处理从程序集加载到类型注册的所有内容。 此类也已在autofac容器中注册。 问题是,如果在解决该类之前必须构建容器,该如何使用该类? 我的意思是,我建立了autofac容器,我解决了PluginLoader类,调用了扫描程序集并找到控制器的方法,但随后该容器已被构建...

编辑1

PluginManager是管理所有插件的基类。 它取决于PluginLoader类,该类基本上使用Assembly.Load方法加载程序集并扫描DLL以搜索MVC控制器。 这些类在autofac容器中注册为单例。 现在,PluginLoader应该也向autofac注册控制器。 但是,在调用执行此操作的方法之前,我必须从容器中解析PluginManager类,这就是问题所在。 似乎是“循环依赖”或类似的东西。 在我解决PluginManager时,容器已构建完成

PluginLoader听起来像是引导程序的一部分-尝试使PluginLoader继承自Module (Autofac类),然后在容器中注册该模块。 该模块可以在其Load()方法中封装插件加载逻辑。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM