Язык программирования C#9 и платформа .NET5
Шрифт:
Разрешение конфликтов имен с помощью полностью заданных имен
Разрешение конфликтов имен с помощью псевдонимов
Создание вложенных пространств имен
Изменение стандартного пространства имен в Visual Studio
Роль сборок .NET Core
Сборки содействуют многократному использованию кода
Сборки являются единицами, поддерживающими версии
Сборки являются самоописательными
Формат сборки .NET Core
Установка инструментов профилирования C++
Заголовок файла операционной системы (Windows)
Заголовок файла CLR
Код CIL, метаданные типов и манифест сборки
Дополнительные ресурсы сборки
Отличия между библиотеками классов и консольными приложениями
Отличия между библиотеками классов .NET Standard и .NET Core
Конфигурирование приложений
Построение и потребление библиотеки классов .NET Core
Исследование манифеста
Исследование кода CIL
Исследование метаданных типов
Построение клиентского приложения C#
Построение клиентского приложения Visual Basic
Межъязыковое наследование в действии
Открытие доступа к внутренним типам для других сборок
Использование атрибута assembly
Использование файла проекта
NuGet и .NET Core
Пакетирование сборок с помощью NuGet
Ссылка на пакеты NuGet
Опубликование консольных приложений (обновление в версии .NET 5)
Опубликование приложений, зависящих от инфраструктуры
Опубликование автономных приложений
Опубликование автономных приложений в виде единственного файла
Определение местонахождения сборок исполняющей средой .NET Core
Резюме
Глава 17
Потребность
в метаданных типовПросмотр (частичных) метаданных для перечисления EngineStateEnum
Просмотр (частичных) метаданных для типа Car
Исследование блока TypeRef
Документирование определяемой сборки
Документирование ссылаемых сборок
Документирование строковых литералов
Понятие рефлексии
Класс System.Туре
Получение информации о типе с помощью System.Object.GetType
Получение информации о типе с помощью typeof
Получение информации о типе с помощью System.Туре.GetType
Построение специального средства для просмотра метаданных
Рефлексия методов
Рефлексия полей и свойств
Рефлексия реализованных интерфейсов
Отображение разнообразных дополнительных деталей
Добавление операторов верхнего уровня
Рефлексия статических типов
Рефлексия обобщенных типов
Рефлексия параметров и возвращаемых значений методов
Динамическая загрузка сборок
Рефлексия сборок инфраструктуры
Понятие позднего связывания
Класс System.Activato
Вызов методов без параметров
Вызов методов с параметрами
Роль атрибутов .NET
Потребители атрибутов
Применение атрибутов в C#
Сокращенная система обозначения атрибутов C#
Указание параметров конструктора для атрибутов
Атрибут [Obsolete] в действии
Построение специальных атрибутов
Применение специальных атрибутов
Синтаксис именованных свойств
Ограничение использования атрибутов