Другие ошибки находят мой Error.cshtml, почему ошибка 404 не находит Error.cshtml?

Я впервые занимаюсь ASP.NET, MVC 3, веб-разработкой и одновременно. Пожалуйста, потерпите меня, поскольку я знаю, что эта тема широко обсуждалась с разных сторон. Я до сих пор не нашел ответа на свой конкретный вопрос: почему мое приложение не находит мой файл Error.cshtml, когда возникает ошибка 404, когда он находит его нормально с другими ошибками?

(Среда: Win 7 64bit, IIS7 , SQL 2008 Express, VS2010, ASP.NET 4, MVC3, EF v4)

У меня есть контроллер WorkerController.cs, который правильно читает и записывает данные из базы данных. Если я изменю имя базы данных, не обновляя свой DbContext, это даст мне ошибку. Когда я изменяю web.config, чтобы всегда показывать пользовательские ошибки, мне отображается файл /Views/Shared/Error.cshtml.

У меня нет файла FooController.cs. Если я перейду в / Foo, я получу ошибку 404, как и ожидалось. Он сообщает мне, что не может найти ресурс / Foo.

Когда я устанавливаю customErrors mode = "On" и отправляю http-запрос на / Foo, я получаю сообщение об ошибке 404 о том, что /Error.cshtml не может быть найден.

Я ищу и читаю сообщения, в которых обсуждается различные методы обработки ошибок с помощью назначенных контроллеров, но я действительно хочу знать, что мне не хватает. Почему он находит /Error.cshtml для других ошибок, но не ошибку 404?

9
задан JCii 8 March 2011 в 14:30
поделиться