Язык программирования C#9 и платформа .NET5

Эндрю Троелсен
100
10
(1 голос)
0 0

Аннотация: В 10-м издании книги описаны новейшие возможности языка C# 9 и .NET 5 вместе с подробным "закулисным" обсуждением, призванным расширить навыки критического мышления разработчиков, когда речь идет об их ремесле. Книга охватывает ASP.NET Core, Entity Framework Core и многое другое наряду с последними обновлениями унифицированной платформы .NET, начиная с улучшений показателей производительности настольных приложений Windows в .NET 5 и обновления инструментария XAML и заканчивая расширенным рассмотрением файлов данных и способов обработки данных. Все примеры кода были переписаны с учетом возможностей последнего выпуска C# 9.

0
425
1520
Язык программирования C#9 и платформа .NET5

Читать книгу "Язык программирования C#9 и платформа .NET5"




   Ограничения ключевого слова dynamic

   Практическое использование ключевого слова dynamic

  Роль исполняющей среды динамического языка

   Роль деревьев выражений

   Динамический поиск в деревьях выражений во время выполнения

  Упрощение вызовов с поздним связыванием посредством динамических типов

   Использование ключевого слова dynamic для передачи аргументов

  Упрощение взаимодействия с СОМ посредством динамических данных (только Windows)

   Роль основных сборок взаимодействия

   Встраивание метаданных взаимодействия

   Общие сложности взаимодействия с СОМ

  Взаимодействие с СОМ с использованием динамических данных C#

  Резюме

 Глава 19

  Причины для изучения грамматики языка CIL

  Директивы, атрибуты и коды операций CIL

   Роль директив CIL

   Роль атрибутов CIL

   Роль кодов операций СIL

   Разница между кодами операций и их мнемоническими эквивалентами в СIL

  Заталкивание и выталкивание: основанная на стеке природа CIL

  Возвратное проектирование

   Роль меток в коде CIL

   Взаимодействие c CIL: модификация файла *.il

   Компиляция кода CIL

  Директивы и атрибуты CIL

   Указание ссылок на внешние сборки в CIL

   Определение текущей сборки в CIL

   Определение пространств имен в CIL

   Определение типов классов в CIL

   Определение и реализация интерфейсов в CIL

   Определение структур в CIL

   Определение перечислений в CIL

   Определение обобщений в CIL

  Компиляция файла CILTypes.il

  Соответствия между типами данных в библиотеке базовых классов .NET Core, C# и CIL

   Определение членов типов в CIL

   Определение полей данных в CIL

   Определение конструкторов типа в CIL

   Определение свойств в CIL

   Определение параметров членов

  Исследование кодов операций CIL

   Директива .maxstack

   Объявление локальных переменных в CIL

   Отображение параметров на локальные переменные в CIL

   Скрытая ссылка this

   Представление итерационных конструкций в CIL

   Заключительные слова о языке CIL

  Динамические сборки

   Исследование пространства имен System.Reflection.Emit

   Роль типа System.Reflection.Emit.ILGenerator

   Выпуск динамической сборки

   Выпуск сборки и набора модулей

   Роль типа ModuleBuilder

   Выпуск типа HelloClass и строковой переменной-члена

   Выпуск конструкторов

   Выпуск метода SayHello()

   Использование динамически сгенерированной сборки

  Резюме

   Часть VI

 Глава 20

  Исследование пространства имен System.IO

  Классы Directory(Directorylnfо) и File(FileInfo)

   Абстрактный базовый класс FileSystemInfo

  Работа с типом DirectoryInfо

   Перечисление файлов с помощью типа DirectoryInfо

   Создание подкаталогов с помощью типа DirectoryInfo

  Работа с типом Directory

  Работа с типом DriveInfo

  Работа с типом FileInfo

   Метод FileInfo.Create()

   Метод FileInfо.Open()

   Методы FileInfо.OpenRead() и FileInfо.OpenWrite()

   Метод FileInfо.OpenText()

   Методы FileInfo.CreateText() и FileInfo.AppendText()

  Работа с типом File

   Дополнительные члены типа File

  Абстрактный класс Stream

   Работа с типом FileStream

  Работа с типами StreamWriter и StreamReader

   Запись в текстовый файл

   Чтение из текстового файла

   Прямое создание объектов типа StreamWriter/StreamReader

  Работа с типами StringWriter и StringReader

  Работа с типами BinaryWriter и BinaryReader

  Программное слежение за файлами

  Понятие сериализации объектов

   Роль графов объектов

   Создание примеров типов и написание операторов верхнего уровня

   Сериализация и десериализация с помощью XmlSerializer

    Управление генерацией данных XML

    Сериализация объектов с использованием XmlSerializer

    Сериализация коллекций объектов

    Десериализация объектов и коллекций объектов

   Сериализация и десериализация с помощью System.Text.Json

    Управление генерацией данных JSON

    Сериализация объектов с использованием JsonSerializer

    Включение полей

    Понятный для человека вывод данных JSON

    Именование элементов JSON в стиле Pascal или в "верблюжьем" стиле

    Обработка чисел с помощью JsonSerializer

    Потенциальные проблемы, связанные с производительностью, при использовании JsonSerializerOption

    Стандартные настройки свойств JsonSerializer для веб-приложений

    Сериализация коллекций объектов

    Десериализация объектов и коллекций объектов

  Резюме

 Глава 21

  Сравнение ADO.NET и ADO

  Поставщики данных ADO.NET

   Поставщики данных ADO.NET

  Типы из пространства имен System.Data

   Роль интерфейса IDbConnection

   Роль интерфейса IDbTransaction

   Роль интерфейса IDbCommand

   Роль интерфейсов IDbDataParameter и IDataParameter

   Роль интерфейсов IDbDataAdapter и IDataAdapter

   Роль интерфейсов IDataReader и IDataRecord

  Абстрагирование поставщиков данных с использованием интерфейсов

  Установка SQL Server и Azure Data Studio

   Установка SQL Server

    Установка SQL Server в контейнер Docker

    Получение образа и запуск SQL Server 2019

    Установка SQL Server 2019

   Установка IDE-среды SQL Server

   Подключение к SQL Server

    Подключение к SQL Server в контейнере Docker

    Подключение к SQL Server LocalDb

    Подключение к любому другому экземпляру SQL Server

  Восстановление базы данных AutoLot из резервной копии

   Копирование файла резервной копии в имеющийся контейнер

   Восстановление базы данных с помощью SSMS

    Восстановление базы данных в экземпляр SQL Server (Docker)

    Восстановление базы данных в экземпляр SQL Server (Windows)

   Восстановление базы данных с помощью Azure Data Studio

  Создание базы данных AutoLot

   Создание базы данных

   Создание таблиц

    Создание таблицы Inventory

    Создание таблицы Makes

    Создание таблицы Customers

    Создание таблицы Orders

    Создание таблицы CreditRisks

   Создание отношений между таблицами

    Создание отношения между таблицами Inventory и Makes

    Создание отношения между таблицами Inventory и Orders

    Создание отношения между таблицами Orders и Customers

    Создание отношения между таблицами Customers и CreditRisks

   Создание хранимой процедуры GetPetName

   Добавление тестовых записей

    Записи таблицы Makes

    Записи таблицы Inventory

    Добавление тестовых записей в таблицу Customers

    Добавление тестовых записей в таблицу Orders

    Добавление тестовых записей в таблицу CreditRisks

  Модель фабрики поставщиков данных ADO.NET

   Полный пример фабрики поставщиков данных

   Потенциальный недостаток модели фабрики поставщиков данных

  Погружение в детали объектов подключений, команд и чтения данных

   Работа с объектами подключений

    Работа с объектами ConnectionStringBuilder

   Работа с объектами команд

   Работа с объектами чтения данных

    Получение множества результирующих наборов с использованием объекта чтения данных

   Работа с запросами создания обновления и удаления

    Создание классов Car и CarViewModel

    Добавление класса InventoryDal

     Добавление конструкторов

     Открытие и закрытие подключения

    Добавление реализации IDisposable

     Добавление методов выборки

     Вставка новой записи об автомобиле

    Создание строго типизированного метода InsertCar()

    Добавление логики удаления

    Добавление логики обновления

    Работа с параметризированным и объектами команд

     Указание параметров с использованием типа DbParameter

     Обновление метода GetCar()

     Обновление метода DeleteCar()

     Обновление метода UpdateCarPetName()

     Обновление метода InsertAuto()

    Выполнение хранимой процедуры

  Создание консольного клиентского приложения

  Понятие транзакций базы данных

   Основные члены объекта транзакции ADO.NET

  Добавление метода транзакции в inventoryDal

   Тестирование транзакции базы данных

  Выполнение массового копирования с помощью ADO.NET

   Исследование класса SqlBulkCopy

   Создание специального класса чтения данных

   Выполнение массового копирования

   Тестирование массового копирования

  Резюме

Часть VII

 Глава 22

  Инструменты объектно-реляционного отображения

  Роль Entity Framework Core

  Строительные блоки Entity Framework Core

   Класс DbContext

    Создание класса, производного от DbContext

     Конфигурирование экземпляра DbContext

     Фабрика DbContext этапа проектирования

     Метод OnModelCreating()

     Сохранение изменений

    Поддержка транзакций и точек сохранения

    Транзакции и стратегии выполнения

     События SavingChanges/SavedChanges

    Класс DbSet<T>

     Типы запросов

     Гибкое сопоставление с запросом или таблицей

    Экземпляр ChangeTracker

     События ChangeTracker

     Сброс состояния DbContext

    Сущности

     Сопоставление свойств со столбцами

     Сопоставление классов с таблицами

      Сопоставление "таблица на иерархию" (ТРН)

      Сопоставление "таблица на тип" (ТРТ)

     Навигационные свойства и внешние ключи

      Отсутствие свойств для внешних ключей

      Отношения "один ко многим"

      Отношения "один к одному"

      Отношения "многие ко многим" (нововведение в версии EF Core 5)

      Каскадное поведение

      Необязательные отношения

      Обязательные отношения

     Соглашения, связанные с сущностями

      Отображение свойств на столбцы

     Аннотации данных Entity Framework

      Аннотации и навигационные свойства

     Интерфейс Fluent API

      Отображение классов и свойств

      Стандартные значения

      Вычисляемые столбцы

      Отношения "один ко многим"

      Отношения "один к одному"

      Отношения "многие ко многим"

     Соглашения, аннотации данных и Fluent API — что выбрать?

  Выполнение запросов

   Смешанное выполнение на клиентской и серверной сторонах

  Сравнение отслеживаемых и неотслеживаемых запросов

  Важные функциональные средства EF Core

   Обработка значений, генерируемых базой данных

   Проверка параллелизма

   Устойчивость подключений

   Связанные данные

    Энергичная загрузка

     Фильтрованные включаемые данные

     Энергичная загрузка с разделением запросов

    Явная загрузка

    Ленивая загрузка

   Глобальные фильтры запросов

    Глобальные фильтры запросов на навигационных свойствах

    Явная загрузка с глобальными фильтрами запросов

Скачать книгу "Язык программирования C#9 и платформа .NET5" бесплатно

100
10
Оцени книгу:
0 0
Комментарии
Минимальная длина комментария - 7 знаков.
Комментариев еще нет. Вы можете стать первым!
КнигоДром » Базы данных » Язык программирования C#9 и платформа .NET5
Внимание