asp.net mvc: динамически добавлять дочерние / подчиненные контроллеры из контроллера - PullRequest
1 голос
/ 14 сентября 2009

В asp.net mvc вы можете легко вызвать / добавить контроллер из представления, но какой самый простой способ добавить дочерние / субконтроллеры из контроллера. Я хочу динамически построить список дочерних контроллеров изнутри самого контроллера, а не из представления.

Шаблон, который я имею в виду, получен из старого портала ibuyspy / dnn, где вы получили список подключаемых модулей, которые вы хотите внедрить на страницу. Каждый модуль сам по себе является контроллером и не знает, что это дочерний запрос. Но dnn использует пользовательский интерфейс / представления для внедрения модулей, так как я хочу создать список модулей в контроллере, а затем указать представлению ввести их.

Заранее спасибо,

Джесси

1 Ответ

1 голос
/ 14 сентября 2009

Если у вас есть массив объектов в вашей модели представления, который содержит информацию, соответствующую желаемым модулям, вы можете внедрить их в представление, используя RenderAction, например:

<div id="LeftColumn">
    <% foreach (module in Model.Modules) { 
        Html.RenderAction(module.ActionName, module.ControllerName, new {id = module.id}); 
    } %>
</div>

RenderAction - это метод, который вызывает метод на контроллере и вставляет результат на страницу в том месте, где вызывается RenderAction. Он является частью сборки ASP.NET MVC Futures.

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