Действие называется дважды - PullRequest
1 голос
/ 28 июля 2011

У меня есть @Html.Action() в моей раскладке, и если поставить точку останова в действии контроллера за этим, то это показывает, что он вызывается дважды (один, кажется, является частью общего действия контроллера, возвращающего мой главный View, а второйпохоже на вызов @Renderbody()).

Это приводит к тому, что мое частичное представление возвращается из действия (в зависимости от роли пользователя), которое отображается дважды, один раз в нужном месте макета (где@Html.Action() вызов выполняется и один раз на остальной части страницы, непосредственно перед тем, как следующий вызов @Html.Action() находится внутри главной страницы, отображаемой в макете.

Я предполагаю, что это как-то связано с @Renderbody()отображение всех частичных представлений, возвращаемых из контроллера, но я понятия не имею.

Есть ли какие-либо указатели, если это правда, и если да, то как я могу показать свое меню без использования действия?

1 Ответ

5 голосов
/ 01 августа 2011

У меня была похожая ситуация, когда я вызывал ActionResult, используя @Html.Action для визуализации частичного представления (после обработки некоторых данных), однако он повторял макет дважды. Чтобы исправить это, мне пришлось изменить ActionResult на PartialViewResult, хотя оба возвращали частичное представление, первое, похоже, рассматривало его так, как будто оно возвращало представление в любом случае ...

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