Исходный код для вызова нескольких в ASP.NET MVC 2.0 (ASPX Engine) Действия над ссылкой, привязанной к столбцу сетки Telerik MVC. - PullRequest
0 голосов
/ 15 апреля 2011

Мне нужен исходный код для вызова нескольких в действиях ASP.NET MVC 2.0 (ASPX Engine) над ссылкой, которая связана с колонкой Telerik MVC Grid.

Я использую Entity Framework, Linq to Entities, ASP.NET MVC 2, шаблон репозитория и ASPX ViewEngine.

У меня есть столбец сетки Telerik MVC в качестве статуса.Этот столбец привязан к клиентскому шаблону (формат ActionLink) как «представление».Когда пользователь нажимает кнопку «Просмотр».

Несколько Telerik MVC гридов, которые показывают 1. Журнал проблем.(Отображается только в том случае, если статус «Учетная запись находится в состоянии ошибки», в противном случае отображается последняя очищенная проблема (текст проблемы и описание проблемы, поступающие из БД, могут отображаться только в текстовом поле (имя проблемы), «в ошибке» и в описании проблемы «div»).")

  1. История состояния.

  2. Информация о банковском счете для зарегистрированного пользователя

  3. Информация о администраторе

Ответы [ 2 ]

0 голосов
/ 16 апреля 2011

При нажатии на представление вы хотите показать новое представление, которое содержит вызовы других методов действия в вашем контроллере (ах) или других представлениях.

Так, например, когда вы щелкаете по ссылке View в сетке, вы можете перейти по ссылке View к другому маршруту (и, в свою очередь, к другому контроллеру). Допустим, ссылка «просмотр» приводит вас к контроллеру с именем CombinedStatusController

Тогда в вашем /Views/CombinedStatusController/Index.aspx Вы вызываете RenderAction для вызова метода на каждом контроллере. Я предполагаю, что с именем StatusController, BankAccountController, AdminInformationController каждый имеет метод: общедоступный индекс ActionResult (int statusId) ...

<% = Html.RenderAction ("Индекс", "Статус", новый {statusId = statusId})%>

<% = Html.RenderAction ("Index", "BankAccount", новый {statusId = statusId})%>

<% = Html.RenderAction ("Индекс", "AdminInformation", новый {statusId = statusId})%>

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

Теперь - другой вариант вместо Html.RenderAction - Html.RenderPartial. Разница в том, что RenderPartial переходит непосредственно к представлению (без прохождения через ваш контроллер) и передает ему копию текущей модели. В вашем случае вам нужно получить данные, относящиеся к statusId, поэтому я бы не использовал здесь RenderPartial, а RenderAction.

Надеюсь, это немного поможет:)

0 голосов
/ 15 апреля 2011

Вы не вызываете несколько действий из интерфейса. Вы вызываете один и этот вызов вызывает другие методы Action (или не-Action) внутри контроллера.

...