我正在使用MvcTurbine,它会自动从您的项目中连接IViewEngines
,最近我添加了MvcMiniProfiler,并试图使其正常工作,唯一的问题是MvcMiniProfiler具有ProfilingViewEngine,它需要IViewEngine的构造函数自变量,因此它将创建双向Structuremap中的依赖关系。下面是错误
StructureMap异常代码:295
使用RequestedType检测到双向依赖性问题:
System.Web.Mvc.IViewEngine,名称:a8cb1f76-6ff5-4702-9e7a-3200703dd519,ConcreteType:MvcMiniProfiler.MVCHelpers.ProfilingViewEngine。
BuildStack是:
1.)RequestedType:System.Web.Mvc.IViewEngine,名称:a8cb1f76-6ff5-4702-9e7a-3200703dd519,ConcreteType:MvcMiniProfiler.MVCHelpers.ProfilingViewEngine
如何忽略MvcTurbine或手动注册IViewEngines?
最佳答案
我可以通过重写IViewEngine注册过程并显式设置单个IViewEngine实现来使其工作。
在我的global.asax中,添加了以下内容:Engine.Initialize.DisableViewEngineRegistration();ViewEngines.Engines.Add(new RazorViewEngine());MiniProfilerEF.Initialize();
这迫使MvcTurbine使用剃刀视图引擎,MvcMiniProfiler可以覆盖它而不会出现错误。
我希望这可以在很长一段时间后有所帮助。如果不适合您,那么也许适合像我这样的其他人,他们发现您的问题是此问题的唯一资源。
关于c# - 如何在Mvc Turbine中使用Mvc MiniProfiler?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7209267/