我刚刚将ELMAH MVC(v2)安装到我的Web应用程序中,但当我尝试在/ elmah查看日志时,我得到以下异常
没有找到支持Elmah.Mvc.ElmahController服务的组件
[ComponentNotFoundException:找不到支持Elmah.Mvc.ElmahController服务的组件]
Castle.MicroKernel.DefaultKernel.Resolve(类型服务)140
Castle.Windsor.WindsorContainer.Resolve(类型服务)40
N2.Engine.Castle.WindsorServiceContainer.Resolve(Type type)40
N2.Engine.ContentEngine.Resolve(输入serviceType)48
该网站包括N2 CMS系统,后者又使用Castle Windsor.
关于如何解决这个问题的任何想法?
解决方法
我知道这已经有了一个公认的答案,并且它与你的问题并不完全相关,但是对于其他没有使用N2并且遇到Elmah.MVC Castle Windsor问题的人,你需要在温莎的Elmah.MVC组件中注册控制器.我做了一个简单的安装程序来处理这个问题:
public class ElamhInstaller : IWindsorInstaller { public void Install(IWindsorContainer container,IConfigurationStore store) { container.Register(Classes.FromAssemblyNamed("Elmah.Mvc") .BasedOn<IController>() .LifestyleTransient()); } }
一旦我添加这个城堡似乎能够找到ElmahController就好了.