Просто включите пользовательские ошибки в web.config:
<customErrors mode="On">
</customErrors>
и представление ~/Views/Shared/Error.aspx
будет отображаться при необработанной ошибке (при условии, что ваш контроллер имеет атрибут [HandleError]
).
Тогда вы можете иметь более точный контроль и разные представления для разных исключений:
[HandleError(
View = "~/Views/Errors/Custom.aspx",
ExceptionType = typeof(SomeCustomException))]