Глава 1. Введение в ASP.NET Core
Что такое ASP.NET Core
Первое приложение на ASP.NET Core с .NET CLI
Первое приложение в Visual Studio
Глава 2. Основы в ASP.NET Core
Создание и запуск приложения. WebApplication и WebApplicationBuilder
Конвейер обработки запроса и middleware
Метод Run и определение терминального middleware
HttpResponse. Отправка ответа
HttpRequest. Получение данных запроса
Отправка файлов
Отправка форм
Переадресация
Отправка и получение json
Создание простейшего API
Загрузка файлов на сервер
Метод Use
Создание ветки конвейера. UseWhen и MapWhen
Метод Map
Классы middleware
Построение конвейера обработки запроса
IWebHostEnvironment и окружение
Глава 3. Dependency Injection
Внедрение зависимостей и IServiceCollection
Создание сервисов
Получение зависимостей
Жизненный цикл зависимостей
Применение сервисов в классах middleware
Scoped-сервисы в singleton-объектах
Множественная регистрация сервисов
Глава 4. Маршрутизация
Конечные точки. Метод Map
Параметры маршрута
Ограничения маршрутов
Создание ограничений маршрутов
Передача зависимостей в конечные точки
Сопоставление запроса с конечной точкой
Сочетание конечных точек с другими middleware
Получение параметров строки запроса
Глава 5. Статические файлы
Установка каталога статических файлов. UseStaticFiles
Работа со статическими файлами
Глава 6. Конфигурация
Основы конфигурации
Нефайловые провайдеры конфигурации
Конфигурация в файлах JSON, XML и Ini
Конфигурация по умолчанию и объединение конфигураций
Анализ конфигурации
Создание провайдера конфгурации
Проекция конфигурации на классы
Передача конфигурации через IOptions
Глава 7. Логгирование
Ведение лога и ILogger
Фабрика логгера и провайдеры логгирования
Конфигурация и фильтрация логгирования
Создание провайдера логгирования
Глава 8. Состояние приложения. Куки. Сессии
HttpContext.Items
Куки
Сессии
Глава 9. Обработка ошибок
Обработка исключений
Обработка ошибок HTTP
Глава 10. Results API
Введение в Results API
Отправка текста и json в Results API
Переадресация в Results API
Отправка статусных кодов в Results API
Отправка файлов в Results API
Определение своего типа IResult
Глава 11. Web API
Пример приложения Web API
Глава 12. Работа с базой данных и Entity Framework
Подключение Entity Framework
Основные операции с данными в Entity Framework Core
Глава 13. Аутентификация и авторизация
Введение в аутентификацию и авторизацию
Аутентификация с помощью JWT-токенов
Авторизация с помощью JWT-токенов в клиенте JavaScript
Аутентификация с помощью куки
HttpContext.User, ClaimPrincipal и ClaimsIdentity
ClaimPrincipal и объекты Claim
Авторизация по ролям
Авторизация на основе Claims
Создание ограничений для авторизации
Глава 14. CORS и кросс-доменные запросы
Подключение CORS в приложении
Конфигурация CORS
Политики CORS
Глобальная и локальная настройка CORS
Глава 15. URL Rewriting
Введение в URL Rewriting
Правила IIS для URL Rewriting
Применение правил Apache для URL Rewriting
Создание правил URL Rewriting
Глава 16. Клиентская разработка
Бандлинг и минификация
Пакетный менеджер Libman
Пакетный менеджер NPM
Глава 17. Кэширование
Кэширование с помощью MemoryCache
Распределенное кэширование. Redis
Сжатие ответа
Кэширование статических файлов
Кэширование ответа и OutputCache
Глава 18. Мониторинг работоспособности приложения
Health Check Middleware