从程序集中加载温莎城堡安装程序时出现问题
这可能是一个愚蠢的问题!我被迫使用温莎城堡作为我的 IOC,并且在使用 MVC 进行设置时遇到一些问题。 这是我所拥有的。
GLOBAL.ASAX
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
RegisterCastle();
}
private void RegisterCastle()
{
_container = new WindsorContainer();
_container.Install(FromAssembly.InDirectory(new AssemblyFilter(HttpRuntime.BinDirectory)));
ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory(_container.Kernel));
}
控制器工厂可以工作,但仅此而已。我的安装程序也有一个单独的项目,我希望它能够从当前 Web 项目中的程序集加载任何安装程序(我可能需要你知道的东西)。
使用 IWindsorInstaller 的 DI 项目中的类根本没有被加载。 我错过了什么吗?
在 Ninject 中我们可以使用
kernel.Load(AppDomain.CurrentDomain.GetAssemblies());
This is probably a stupid question! I am being forced to use Castle Windsor as my IOC and am having some issues getting things setup with MVC.
Here is what I have.
GLOBAL.ASAX
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
RegisterCastle();
}
private void RegisterCastle()
{
_container = new WindsorContainer();
_container.Install(FromAssembly.InDirectory(new AssemblyFilter(HttpRuntime.BinDirectory)));
ControllerBuilder.Current.SetControllerFactory(new WindsorControllerFactory(_container.Kernel));
}
The controller factory works but that is about it. I have a separate project with my installers as well I wold like it to load any installers from assemblies in the current web project(I may need something there ya know).
The classes in the DI project using IWindsorInstaller are not being loaded at all.
Am I missing something?
In Ninject we could use
kernel.Load(AppDomain.CurrentDomain.GetAssemblies());
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我最终在 App_Start 中使用了 WebActivator
I ended up using WebActivator in App_Start