我刚刚将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(类型类型)40 N2.Engine.ContentEngine.Resolve(类型的serviceType)48
该网站包括N2 CMS系统,后者又使用Castle Windsor.
关于如何解决这个问题的任何想法?
Tie*_* T. 15
我知道这已经有了一个公认的答案,并且它与你的问题并不完全相关,但是对于其他没有使用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());
}
}
Run Code Online (Sandbox Code Playgroud)
一旦我添加这个城堡似乎能够找到ElmahController就好了.
发布问题后不久就找到了解决方案。我需要向 N2 注册 Elmah 控制器:
var engine = MvcEngine.Create();
engine.RegisterControllers(typeof(GlobalApplication).Assembly);
engine.RegisterControllers(typeof(ElmahController).Assembly);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1088 次 |
| 最近记录: |