Как мне управлять областями MVC и рендерями в разных контроллерах?

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

У меня есть представление _viewstart.cshtml, на котором устанавливает общую страницу макета, чтобы включить меню и частичную информацию с какой-то информацией пользователя. Поскольку это не было добавлено на мою страницу в моей области, я тоже добавил файл _ViewStart в мою область.

Этот файл устанавливает макет на «~ / Views / shared / _layout.cshtml», который находится за пределами моей области администратора. Тем не менее, файл _layout включает в себя метод рендеринга () , который вызывает метод действий на ребенка на контроллере для рендеринга. Проблема в том, что область, похоже, не имеет видимости этого контроллера, и поэтому бросает следующее исключение:

The controller for path '/Admin/LeadOrigin' was not found or does not implement IController.

точка, в которой она произошла, хотя здесь:

Line 70:         <div id="logindisplay">
Line 71:             @{
Line 72:                 Html.RenderAction("UserInfo", "Account");              
Line 73:             }
Line 74:         </div>

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

Любые идеи, как обойти эту проблему?

32
задан Richard Dalton 12 September 2011 в 15:11
поделиться

1 ответ

Можно использовать @Html. Действие для рендеринга частичного представления путем передачи значений параметров при необходимости.

@Html.Action("ActionName", "ControolerName", new { firstParam = "a", SecondParam = "b",.... })
0
ответ дан 27 November 2019 в 20:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: