Язык программирования C#9 и платформа .NET5 - Эндрю Троелсен
Шрифт:
Интервал:
Закладка:
Атрибут ApiController
Обязательность маршрутизации с помощью атрибутов
Автоматические ответы с кодом состояния 400
Выведение источников для привязки параметров
Детальные сведения о проблемах для кодов состояния ошибок
Обновление настроек Swagger/OpenAPI
Обновление обращений к Swagger в классе Startup
Добавление файла XML-документации
Добавление XML-комментариев в процесс генерации Swagger
Дополнительные возможности документирования для конечных точек API
Построение методов действий API
Конструктор
Методы GetXXX()
Метод UpdateOne()
Метод AddOne()
Метод DeleteOne()
Класс CarsController
Оставшиеся контроллеры
Фильтры исключений
Создание специального фильтра исключений
Добавление фильтров в конвейер обработки
Тестирование фильтра исключений
Добавление поддержки запросов между источниками
Создание политики CORS
Добавление политики CORS в конвейер обработки HTTP
Резюме
Глава 31
Введение в представления ASP.NET Core
Экземпляры класса ViewResult и методы действий
Механизм визуализации и синтаксис Razor
Представления
Каталог Views
Каталог Shared
Каталог DisplayTemplates
Шаблон отображения DateTime
Шаблон отображения Car
Шаблон отображения CarWithColor
Каталог EditorTemplates
Шаблон редактирования Car
Компоновки
Указание стандартной компоновки для представлений
Частичные представления
Обновление компоновки с использованием частичных представлений
Создание частичных представлений
Частичное представление Head
Частичное представление Menu
Частичное представление JavaScriptFiles
Отправка данных представлениям
Строго типизированные представления и модели представлений
Объекты ViewBag, ViewData и TempData
Вспомогательные функции дескрипторов
Включение вспомогательных функций дескрипторов
Вспомогательная функция дескриптора для формы
Форма создания для сущности Car
Вспомогательная функция дескриптора для действия формы
Вспомогательная функция дескриптора для якоря
Вспомогательная функция дескриптора для элемента ввода
Вспомогательная функция дескриптора для текстовой области
Вспомогательная функция дескриптора для элемента выбора
Вспомогательные функции дескрипторов для проверки достоверности
Вспомогательная функция дескриптора для среды
Вспомогательная функция дескриптора для ссылки
Вспомогательная функция дескриптора для сценария
Вспомогательная функция дескриптора для изображения
Специальные вспомогательные функции дескрипторов
Подготовительные шаги
Обновление Startup.cs
Создание расширяющего метода для типа string
Создание базового класса
Вспомогательная функция дескриптора для вывода сведений об элементе
Вспомогательная функция дескриптора для удаления элемента
Вспомогательная функция дескриптора для редактирования сведений об элементе
Вспомогательная функция дескриптора для создания элемента
Вспомогательная функция дескриптора для вывода списка элементов
Обеспечение видимости специальных вспомогательных функций дескрипторов
Вспомогательные функции HTML
Вспомогательная функция DisplayFor()
Вспомогательная функция DisplayForModel()
Вспомогательные функции EditorFor() и EditorForModel()
Управление библиотеками клиентской стороны
Установка диспетчера библиотек как глобального инструмента .NET Core
Добавление в проект AutoLot.Mvc библиотек клиентской стороны
Добавление файла libman.json
Visual Studio
Командная строка
Обновление файла libman.json
Обновление ссылок на файлы JavaScript и CSS
Завершение работы над представлениями CarsController и Cars
Класс CarsController
Частичное представление списка автомобилей
Представление Index
Представление ВуMake
Представление Details
Представление Create
Методы действий Create()
Вспомогательный метод GetMakes()
Метод действия Create() для GET
Метод действия Create() для POST
Представление Edit
Методы действий Edit()
Метод действия Edit() для GET
Метод действия Edit() для POST
Представление Delete
Методы действий Delete()
Метод действия Delete() для GET
Метод действия Delete() для POST
Компоненты представлений
Код серверной стороны
Построение частичного представления
Вызов компонентов представлений
Вызов компонентов представлений как специальных вспомогательных функций дескрипторов
Обновление меню
Пакетирование и минификация
Пакетирование
Минификация
Решение WebOptimizer
Обновление Startup.cs
Обновление _Viewlmports.cshtml
Шаблон параметров в ASP.NET Core
Добавление информации об автодилере
Создание оболочки службы
Обновление конфигурации приложения
Создание класса ApiServiceSettings
Оболочка службы API
Интерфейс IApiServiceWrapper
Класс ApiServiceWrapper
Внутренние поддерживающие методы
Вспомогательные методы для POST и PUT
Вспомогательный метод для DELETE
Вызовы HTTP-метода GET
Вызов HTTP-метода POST
Вызов HTTP-метода PUT
Вызов HTTP-метода DELETE
Конфигурирование служб
Построение класса CarsController
Вспомогательный метод GetMakes()
Вспомогательный метод GetOneCar()
Открытые методы действий
Обновление компонента представления
Совместный запуск приложений AutoLot.Mvc и AutoLot.Api
Использование Visual Studio
Использование командной строки
Резюме
Об авторах
Эндрю Троелсен обладает более чем 20-летним опытом работы в индустрии программного обеспечения (ПО). На протяжении этого времени он выступал в качестве разработчика, преподавателя, автора, публичного докладчика и теперь является руководителем команды и ведущим инженером в компании Thomson Reuters. Он был автором многочисленных книг, посвященных миру Microsoft, в которых раскрывалась разработка для СОМ на языке C++ с помощью ATL, СОМ и взаимодействия с .NET, а также разработка на языках Visual Basic и C# с использованием платформы .NET. Эндрю Троелсен получил степень магистра в области разработки ПО (MSSE) в Университете Сейнт Томас и трудится над получением второй степени магистра по математической лингвистике (CLMS) в Вашингтонском университете.
Филипп Джепикс — международный докладчик, обладатель званий Microsoft MVP, ASPInsider, профессиональный преподаватель по Scrum, а также активный участник сообщества разработчиков. Филипп имел дело еще с самыми первыми бета-версиями платформы .NET, разрабатывая ПО свыше 35 лет, и с 2005 года интенсивно вовлечен в сообщество