带有AUTOFAC的ASP.NET MVC - 自定义错误消息消失了

时间:2009-08-29 20:21:08

标签: asp.net-mvc autofac

我的自定义错误消息在此过程中的某处停止工作,我收到此错误。有任何想法吗?

Autofac.ComponentNotRegisteredException:请求的服务'controller.error.aspx'尚未注册。

我以前从未做过任何事情来注册它们。

我看到了几个关于自定义错误消息的问题,但我找不到那些响应中提到的其他错误。

编辑: 我在web.config中尝试过“On”和“RemoteOnly”。我在Shared文件夹中有一个Error.aspx。我正在使用[ErrorHandler]属性。这工作了很长时间,当我对Global.asax中的Autofac配置进行一些更改时,可能会退出工作。有关未注册服务的错误消息在错误退出工作的同时启动。我不知道如何使用Autofac进行注册。

1 个答案:

答案 0 :(得分:0)

感谢Nicholas Blumhardt在{{​​3}}和Ben Hall的帮助Autofac forum。我不得不在web.config中的页面标记和控件部分的mvc标记中添加一些属性。我不知道为什么应用程序的行为发生了变化,因为这些信息从未出现在web.config中。但它奏效了!

<pages
  pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
  pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"
  userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
  <controls>
    <add tagPrefix="mvc" namespace="System.Web.Mvc" assembly="System.Web.Mvc, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
  </controls>
</pages>

编辑:考虑到这一点,我认为当我将MVC DLL复制到我的项目中时,错误页面必须停止工作。我不得不用这个应用程序对MVC进行DLL部署,因为我无法在服务器上安装MVC。