Есть ли способ иметь часть страницы, которая отображается как небольшая подстраница, как компоненты?
Например, если на всех моих страницах есть корзина покупок?
Есть ли способ иметь часть страницы, которая отображается как небольшая подстраница, как компоненты?
Например, если на всех моих страницах есть корзина покупок?
Если вы хотите, чтобы он отображал действие другого контроллера в качестве компонента, чтобы получить инкапсуляцию, вы используете.
Html.RenderAction
использует Routedata, чтобы доставить вас туда, имеет свои собственные данные просмотра и своего рода мини-жизненный цикл
Используя предварительный просмотр 5, Html.RenderPartial - ваш помощник, вы можете отображать субэлементы управления и передавать им свои данные просмотра или произвольную модель, а также новую комбинацию данных просмотра.
Вы можете создать ActionFilter, который изменяет данные представления. Таким образом, вы можете украсить каждое действие, которое возвращает партиал, фильтром действий. Взгляните на мой пост:
Вам нужны субконтроллеры. Эта реализация - лучший способ сделать то, о чем вы говорите.
Изменить: я только что опубликовал об этом здесь: http://mhinze.com/subcontrollers-in-aspnet-mvc/