Нужно предложение по обработке ошибок в частичных представлениях - PullRequest
0 голосов
/ 01 июня 2011

Я не могу найти ответ на это. По сути, внутри View я получил

@{
    Html.RenderAction("PartialViewAction", "SomeController");
}   

Допустим, это частичное действие вызывает исключение: соединение с БД отсутствует или что-то еще. Как бы я отобразил ошибку пользователю?

Все статьи / блоги, которые я вижу, говорят об обработке ошибок в (не частичных) представлениях и частичках, отображаемых при вызовах AJAX. Но это не тот случай.

1 Ответ

0 голосов
/ 01 июня 2011

Я думаю, что каждое представление должно обрабатывать свои исключения, поэтому ваша логика должна быть в представлении, но если мы помним правила MVC, обработка исключений должна быть на контроллерах, потому что они отвечают за связь с моделью. Так что вопрос в том, как заставить их показываться в окончательном виде. Я не знаю, может ли это быть полезным, но я попробую обходной путь.

Идея состоит в том, чтобы подписать ваши исключения во время запроса в списке, например, элегантным решением может быть этот список в вашей Viewbag, а затем в вашей глобальной компоновке напишите их в представлении, например,

<ul name="hiddenExceptions" class="hidden">
     <li>exception 1 message wrote in the layout</li>
     <li>exception 2</li>
</ul>

Позже у вас может быть скрипт, который будет перебирать этот список, предпринимать соответствующие действия, показывать их в окне, показывать в верхней части страницы и т. Д.

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...