我遇到了像
这样的问题“IControllerFactory'Spring.Web.Mvc.SpringControllerFactory'没有为名称'Account'返回控制器”。这是什么意思?????
我从名为Account的控制器调用Logon方法。 但是当同一个文件保存在家庭控制器中并被调用时它会渲染。
答案 0 :(得分:2)
我遇到了同样的问题。就我而言,我使用的是Spring.NET依赖注入,我忘了在XML文件中声明AccountController
对象依赖。
一年后,我希望这有助于某人。
答案 1 :(得分:0)
我认为这是Spring.NET Spring.Web.Mvc.SpringControllerFactory中的一个错误:
protected override IController GetControllerInstance(RequestContext requestContext, Type controllerType)
{
IController controllerInstance = null;
if (controllerType != null)
{
IDictionary objectsOfType = ApplicationContext.GetObjectsOfType(controllerType);
if (objectsOfType.Count > 0)
{
controllerInstance = (IController)objectsOfType.Cast<DictionaryEntry>().First<DictionaryEntry>().Value;
}
}
else // there should be if (contollerInstance == null)
{
controllerInstance = base.GetControllerInstance(requestContext, controllerType);
}
this.AddActionInvokerTo(controllerInstance);
return controllerInstance;
}
如果无法从Spring容器中获取controllerInstance,则应从基类(DefaultControllerFactory)中检索它。