Где лучшее место для логики раскладок asp.net mvc - PullRequest
3 голосов
/ 29 февраля 2012

Например, у меня есть веб-сайт с тяжелой версткой (главная страница).А для рендеринга макета нам нужно получить кое-что из базы данных и, возможно, сделать некоторые вычисления.

Но куда я должен поместить этот код?

  1. Вставлять код в каждое представление (может быть, через секцию рендеринга) - плохая идея.
  2. Разметка разметки курсора тоже.Разметка используется для логики визуализации, но не для бизнес-логики.

Ответы [ 2 ]

4 голосов
/ 29 февраля 2012

Haacked написал в блоге о помощнике Html.RenderAction (также называемом дочерними действиями), который идеально подходит для вашего сценария.Это позволяет вам встраивать в ваш сайт партиалы / виджеты, которые проходят отдельный жизненный цикл Controller / Model / View, нежели основной.Очень полезно для включения общих виджетов в ваш макет без необходимости беспокоиться об этой поперечной логике вашего основного контроллера.

0 голосов
/ 29 февраля 2012

Вы должны поместить эту логику в дочерние действия и вызвать их в макете.

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