我最近加入微軟統一到我的MVC3項目,現在我得到這個錯誤:問題與自定義控制器工廠
The controller for path '/favicon.ico' could not be found or it does not implement IController.
我真的沒有一個favicon.ico的,所以我不知道在哪裏這是來自。而最奇怪的是,該視圖實際上正在呈現,然後這個錯誤正在被拋出......我不知道,如果它是我的控制器工廠類錯誤,因爲我從一些教程(我不是IoC - 這是我第一次這樣做)。代碼如下:
公共類UnityControllerFactory:DefaultControllerFactory { IUnityContainer容器;
public UnityControllerFactory(IUnityContainer _container)
{
container = _container;
}
protected override IController GetControllerInstance(System.Web.Routing.RequestContext requestContext, Type controllerType)
{
IController controller;
if(controllerType == null)
throw new HttpException(404, string.Format("The controller for path '{0}' could not be found or it does not implement IController.",
requestContext.HttpContext.Request.Path));
if(!typeof(IController).IsAssignableFrom(controllerType))
throw new ArgumentException(string.Format("Type requested is not a controller: {0}",
controllerType.Name),
"controllerType");
try
{
controller = container.Resolve(controllerType) as IController;
}
catch (Exception ex)
{
throw new InvalidOperationException(String.Format(
"Error resolving controller {0}",
controllerType.Name), ex);
}
return controller;
}
}
有什麼建議?
提前致謝!
非常感謝彌敦道!這實際上是:) – Kassem 2011-02-11 22:39:13