Компоненты представлений в ASP.NET Core MVC. Свойства ViewComponent

Создание компонентов представлений как наследников класса ViewComponent имеет ещё одно преимущество — благодаря такому подходу мы получаем доступ ряду полезных для работы нашего компонента свойств. Рассмотрим пример использования этих свойств в приложении.

Читать далее

Компоненты представлений в ASP.NET Core MVC. ViewComponentResult и работа с представлениями

Как правило, компонент представления наследуется от ViewComponent, инициализирует модель и передает ее в представление, вызвав один из перегруженных методов View() класса ViewComponent. Именно эти методы генерирует объект ViewComponentResult.

Читать далее

Компоненты представлений в ASP.NET Core MVC. Вывод результатов компонента (IViewComponentResult)

До сих пор мы использовали компоненты представлений, которые в качестве результата выводили обычную строку string, что, строго говоря, не совсем корректно. Обычно, в качестве результата метода Invoke()/InvokeAsync() возвращается объект, реализующий интерфейс IViewComponentResult или, в случае использования асинхронного метода, Task<IViewComponentResult>. Здесь можно провести аналогию с контроллерами — технически, действие контроллера может возвращать и обычные строки, однако на практике контроллеры всё же возвращают один из объектов, реализующих IActionResult.  Сегодня рассмотрим варианты использования классов, реализующих этот интерфейс для вывода результатов компонента представлений.

Читать далее

Компоненты представлений в ASP.NET Core MVC. Передача данных в компоненты

Компоненты представлений в ASP.NET Core MVC могут использовать в своей работе различные данные, получаемые из вне. Это могут быть какие-то параметры в виде строк, чисел и т.д., объекты, содержащие наборы параметров или зависимости. В этой части мы рассмотрим несколько возможных вариантов передачи данных в компоненты представлений.

Читать далее

Компоненты представлений в ASP.NET Core MVC. Определение компонента

Компоненты представлений (View Components) в ASP.NET Core MVC — это ещё одна функциональная особенность платформы. Формально, компонент представления представляющие собой класс C# (обычно POCO), связанный с представлением и выполняющий определенные задачи в представлении. Например, мы можем выделить в приложении ASP.NET Core MVC какие-либо части — облако тегов, меню, различного рода виджеты, которые в коде могут быть представлены отдельными компонентами представлений. Компоненты представлений очень похожи на частичные представления, о которых мы уже знаем, но, при этом, обладают рядом особенностей, с которыми мы и познакомимся в этой части.

Читать далее