Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
собственный обработчик ошибок - проблема с передачей statusDescription
|
|||
|---|---|---|---|
|
#18+
MVC сделал свой обработчик для 403 в webconfig добавил <system.webServer> .... <httpErrors errorMode="Custom" existingResponse="Replace"> <remove statusCode="404"></remove> <remove statusCode="403"></remove> <error statusCode="403" path="/Error/Forbidden" responseMode="ExecuteURL"/> <error statusCode="404" path="/Error/NotFound" responseMode="ExecuteURL"/> </httpErrors> </system.webServer> сделал контроллер, представление public ActionResult Forbidden(Exception ex) { Response.StatusCode = 403; return View(ex); } вызов делаю по throw new HttpException(403, "Вы не имеете возможность редактировать эту запись"); сам вызов, переход работает, но не могу никак добиться чтобы он в контроллер отдавал моё описание к ошибке. Вот и вопрос как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.10.2016, 16:03 |
|
||
|
собственный обработчик ошибок - проблема с передачей statusDescription
|
|||
|---|---|---|---|
|
#18+
если кому то ещё интересно, я так это решил: добавил в Global.asax protected void Application_Error(object sender, EventArgs e) { Exception exception = Server.GetLastError(); Response.Clear(); HttpException httpException = exception as HttpException; if (httpException != null) { Session["error"] = exception.Message; } } в итоге тут ошибка есть, запомнил текст в сессии, а дальше его можно использовать в контролах и представлении @model Exception @{ ViewBag.Title = "Ошибка 403"; } <h2>Нет прав доступа</h2> @Session["error"] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2016, 17:12 |
|
||
|
собственный обработчик ошибок - проблема с передачей statusDescription
|
|||
|---|---|---|---|
|
#18+
ssa82, StatusDescripton не предназначен для вывода во View, поэтому вы делаете это неправильно. Если хотите что-то вывести во вью, используйте стандартные средства. Например, используйте свой фильтр для перехвата исключений и генерации требуемого вывода: вызов нужного вью с нужной вью-моделью, или на крайний случай с передачей текста ошибки через ViewBag. По поводу решения через сессию, оно хоть и выглядит как рабочее, но совершенно неправильно использовать сессию для передачи данных во вью. Не делайте так в рабочих проектах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.10.2016, 09:29 |
|
||
|
собственный обработчик ошибок - проблема с передачей statusDescription
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 06:18 |
|
||
|
собственный обработчик ошибок - проблема с передачей statusDescription
|
|||
|---|---|---|---|
|
#18+
Calabongassa82, Я бы сделал всё немного по-другому . Ох и понавидался же я всяких удивительных схем соревнующихся друг с другом по дикости и степени кривизны костылей для обработки ошибок в ASP.NET/MVC, даже целые решения в нугете для 404 валяются. А всего-то надо сделать следующее: 1. Кастомный глобальный фильтр исключений для логгирования ошибок. 2. Кастомные страницы ошибок (например, как описаны в статье, но желательно, чтобы 500 была статической, или пусть генерируется раз и сидит в кеше). 3. Трансформация конфига: Web.Release.config Код: xml 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. В дебаге увидим классический вывод об ошибках, в релизе увидем свои красивые странички. И при этом работа фильтров будет работать в штатном режиме. Резюмирую, ИМХО статья о том как делать не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 07:13 |
|
||
|
собственный обработчик ошибок - проблема с передачей statusDescription
|
|||
|---|---|---|---|
|
#18+
hVosttА всего-то надо сделать следующее:Если я всё правильно вспоминаю, то в прошлый раз выяснилось, что в таким образом нельзя указать адрес относительно корня приложения, только относительно корня сайта. зы: Ничего плохого сказать не хотел, просто сухие факты. :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2016, 08:19 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=39332475&tid=1355713]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 240ms |
| total: | 361ms |

| 0 / 0 |
