Язык программирования C#9 и платформа .NET5
Шрифт:
Обработка аргументов внутри множества операторов
Лямбда-выражения с несколькими параметрами и без параметров
Использование ключевого слова static с лямбда-выражениями (нововведение в версии 9.0)
Использование отбрасывания с лямбда-выражениями (нововведение в версии 9.0)
Модернизация примера CarEvents с использованием лямбда-выражений
Резюме
Глава 13
Программные конструкции, специфичные для LINQ
Неявная типизация локальных переменных
Синтаксис инициализации объектов и коллекций
Лямбда-выражения
Расширяющие методы
Анонимные типы
Роль LINQ
Выражения LINQ строго типизированы
Основные сборки LINQ
Применение запросов LINQ к элементарным массивам
Решение с использованием расширяющих методов
Решение без использования LINQ
Выполнение рефлексии результирующего набора LINQ
LINQ и неявно типизированные локальные переменные
LINQ и расширяющие методы
Роль отложенного выполнения
Роль немедленного выполнения
Возвращение результатов запроса LINQ
Возвращение результатов LINQ посредством немедленного выполнения
Применение запросов LINQ к объектам коллекций
Доступ к содержащимся в контейнере подобъектам
Применение запросов LINQ к необобщенным коллекциям
Фильтрация данных с использованием метода OfТуре<Т>
Исследование операций запросов LINQ
Базовый синтаксис выборки
Получение подмножества данных
Проецирование в новые типы данных
Проецирование в другие
Подсчет количества с использованием класса Enumerable
Изменение порядка следования элементов в результирующих наборах на противоположный
Выражения сортировки
LINQ как лучшее средство построения диаграмм Венна
Устранение дубликатов
Операции агрегирования LINQ
Внутреннее представление операторов запросов LINQ
Построение выражений запросов с применением операций запросов
Построение выражений запросов с использованием типа Enumerable и лямбда-выражений
Построение выражений запросов с использованием типа Enumerable и анонимных методов
Построение выражений запросов с использованием типа Enumerable и низкоуровневых делегатов
Резюме
Глава 14
Роль процесса Windows
Роль потоков
Взаимодействие с процессами используя платформу .NET Core
Перечисление выполняющихся процессов
Исследование конкретного процесса
Исследование набора потоков процесса
Исследование набора модулей процесса
Запуск и останов процессов программным образом
Управление запуском процесса с использованием класса ProcessStartInfo
Использование команд операционной системы с классом ProcessStartInfo
Домены приложений .NET
Класс System.AppDomain
Взаимодействие со стандартным доменом приложения
Перечисление загруженных сборок
Изоляция сборок с помощью контекстов загрузки приложений
Итоговые сведения о процессах, доменах приложений и контекстах загрузки