ASP.NET MVC com Autofac - Mensagens de erro personalizadas desapareceram
-
20-09-2019 - |
Pergunta
Minhas mensagens de erro personalizadas param de trabalhar em algum lugar ao longo do caminho e estou recebendo esse erro. Alguma ideia?
Autofac.componentNotRegisterEdException: O serviço solicitado 'controller.error.aspx' não foi registrado.
Eu nunca fiz nada para registrá -los antes.
Vi várias perguntas sobre as mensagens de erro personalizadas, mas não consegui encontrar mais nada errado que foi mencionado nessas respostas.
EDIT: Eu tentei "On" e "Remoteonly" em web.config. Eu tenho um erro.aspx na pasta compartilhada. Estou usando o atributo [ErrorHandler]. Isso funcionou por um longo tempo e provavelmente parou de trabalhar quando fiz algumas alterações na configuração do Autofac no Global.asax. A mensagem de erro sobre o serviço que não está sendo registrado foi iniciado ao mesmo tempo em que os erros pararam de funcionar. Não sei como registrar isso no Autofac.
Solução
Obrigado a Nicholas Blumhardt por sua ajuda no Fórum Autofac e Ben Hall para o seu Postagem do blog. Eu tive que adicionar alguns atributos à tag de página no web.config e uma tag MVC na seção Controles. Não sei por que o comportamento do aplicativo mudou, porque essas informações nunca foram no web.config. Mas funcionou!
<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>
EDIT: Pensando mais sobre isso, acho que a página de erro deve ter parada de funcionar quando copiei as DLLs do MVC para o meu projeto. Eu tive que fazer uma implantação de DLL do MVC com este aplicativo porque não consigo instalar o MVC no servidor.