我已成功配置了structuremap,但每个页面都搜索名为“scripts”的控制器
public class StructureMapControllerFactory : DefaultControllerFactory
{
public override IController CreateController(RequestContext context, string controllerName)
{
Type controllerType = base.GetControllerType(context, controllerName);
return ObjectFactory.GetInstance(controllerType) as IController;
}
}
这是因为参数字符串ControllerName每次都带有字符串“scripts”
答案 0 :(得分:1)
问题可能是路由引擎正在处理脚本请求。您必须配置路由,以便路由引擎忽略脚本,图标,图像等。
答案 1 :(得分:0)
尝试覆盖GetControllerInstance
而不是CreateController
:
public class StructureMapControllerFactory : DefaultControllerFactory
{
protected override IController GetControllerInstance(Type controllerType)
{
return (IController)ObjectFactory.GetInstance(controllerType);
}
}