данным
AutoLot
. Глава начинается с построения шаблонов сущностей и производного от
DbContext
класса для базы данных
AutoLot
из главы 21. Затем подход "сначала база данных" меняется на подход "сначала код". Сущности обновляются до своей финальной версии, после чего создается и выполняется миграция, чтобы обеспечить соответствие сущностям. Последнее изменение базы данных заключается в создании миграции для хранимой процедуры из главы 21 и нового представления базы данных. В целях инкапсуляции кода добавляются хранилища данных, и затем организуется процесс инициализации данных. Наконец, проводится испытание уровня доступа к данным с использованием инфраструктуры xUnit для автоматизированного интеграционного тестирования.
Часть IV. Дополнительные конструкции программирования на C#
Первоначальный API-интерфейс для построения графических пользовательских интерфейсов настольных приложений, поддерживаемый платформой .NET, назывался Windows Forms. Хотя он по-прежнему доступен, в версии .NET 3.0 программистам был предложен API-интерфейс под названием Windows Presentation Foundation (WPF). В отличие от Windows Forms эта инфраструктура для построения пользовательских интерфейсов объединяет в единую унифицированную модель несколько основных служб, включая привязку данных, двумерную и трехмерную графику, анимацию и форматированные документы. Все это достигается с использованием декларативной грамматики разметки, которая называется расширяемым языком разметки приложений (XAML). Более того, архитектура элементов управления WPF предлагает легкий способ радикального изменения внешнего вида и поведения типового элемента управления с применением всего лишь правильно оформленной разметки XAML.
Гпава 24. Введение в Windows Presentation Foundation и XAML
Эта глава начинается с исследования мотивации создания WPF (с учетом того, что в .NET уже существовала инфраструктура для разработки графических пользовательских интерфейсов настольных приложений). Затем вы узнаете о синтаксисе XAML и ознакомитесь с поддержкой построения приложений WPF в Visual Studio.
Глава 25. Элементы управления, компоновки, события и привязка данных в WPF
В этой главе будет показано, как работать с элементами управления и диспетчерами компоновки, предлагаемыми WPF. Вы узнаете, каким образом создавать системы меню, окна с разделителями, панели инструментов и строки состояния. Также в главе рассматриваются API-интерфейсы (и связанные с ними элементы управления), входящие в состав WPF, в том числе Ink API, команды, маршрутизируемые события, модель привязки данных и свойства зависимости.
Глава 26. Службы визуализации графики WPF
Инфраструктура WPF является API-интерфейсом, интенсивно использующим графику, и с учетом этого WPF предоставляет три подхода к визуализации графических данных: фигуры, рисунки и геометрические объекты, а также визуальные объекты. В настоящей главе вы ознакомитесь с каждым подходом и попутно изучите несколько важных графических примитивов (например, кисти, перья и трансформации). Кроме того, вы узнаете, как встраивать векторные изображения в графику WPF и выполнять операции проверки попадания в отношении графических данных.
Глава 27. Ресурсы, анимация, стили и шаблоны WPF
В этой главе освещены важные (и взаимосвязанные) темы, которые позволят углубить знания API-интерфейса WPF. Первым делом вы изучите роль логических ресурсов. Система логических ресурсов (также называемых объектными ресурсами) предлагает способ именования и ссылки на часто используемые объекты внутри приложения WPF. Затем вы узнаете, каким образом определять, выполнять и управлять анимационной последовательностью. Вы увидите, что применение анимации WPF не ограничивается видеоиграми или мультимедиа-приложениями. В завершение главы вы ознакомитесь с ролью стилей WPF. Подобно веб-странице, использующей CSS или механизм тем ASP.NET, приложение WPF может определять общий вид и поведение для целого набора элементов управления.
Глава 28. Уведомления WPF, проверка достоверности, команды и MWM
Эта глава начинается с исследования трех основных возможностей инфраструктуры WPF: уведомлений, проверки достоверности и команд. В разделе, в котором рассматриваются уведомления, вы узнаете о наблюдаемых моделях и коллекциях, а также о том, как они поддерживают данные приложения и пользовательский интерфейс в синхронизированном состоянии. Затем вы научитесь создавать специальные команды для инкапсуляции кода. В разделе, посвященном проверке достоверности, вы ознакомитесь с несколькими механизмами проверки достоверности, которые доступны для применения в приложениях WPF. Глава завершается исследованием паттерна "модель-представление-модель представления" (MWM) и созданием приложения, демонстрирующего паттерн MWM в действии.
Эта часть посвящена построению веб-приложений с применением инфраструктуры ASP.NET Core, которую можно использовать для создания веб-приложений и служб REST.
Глава 29. Введение в ASP.NET Core
В этой главе обсуждается инфраструктура ASP.NET Core и паттерн MVC. Сначала объясняются функциональные средства, перенесенные в ASP.NET Core из классических инфраструктур ASP.NET MVC и Web API, в том числе контроллеры и действия, привязка моделей, маршрутизация и фильтры. Затем рассматриваются новые функциональные средства, появившиеся в ASP.NET Core, включая внедрение зависимостей, готовность к взаимодействию с облачными технологиями, осведомленная о среде система конфигурирования, шаблоны развертывания и конвейер обработки запросов HTTP. Наконец, в главе создаются два проекта ASP.NET Core, которые будут закончены в последующих двух главах, демонстрируются варианты запуска приложений ASP.NET Core и начинается процесс конфигурирования этих двух проектов ASP.NET Core.
Глава 30. Создание служб REST с помощью ASP.NET Core
В этой главе завершается создание приложения REST-службы ASP.NET Core. Первым делом демонстрируются разные механизмы возвращения клиенту результатов JSON и встроенная поддержка приложений служб, обеспечиваемая атрибутом ApiController
. Затем добавляется пакет Swagger/OpenAPI, чтобы предоставить платформу для тестирования и документирования службы. В конце главы создаются контроллеры для приложения и фильтр исключений.
Глава 31. Создание приложений MVC с помощью ASP.NET Core
В последней главе книги заканчивается рассмотрение ASP.NET Core и работа над веб-приложением MVC. Сначала подробно обсуждаются представления и механизм представлений Razor, включая компоновки и частичные представления. Затем исследуются вспомогательные функции дескрипторов, а также управление библиотеками клиентской стороны и пакетирование/минификация этих библиотек. Далее завершается построение класса CarsController
и его представлений вместе со вспомогательными функциями дескрипторов. В управляемое данными меню добавляется компонент представления и рассматривается шаблон параметров. Наконец, создается оболочка для службы клиента HTTP, а класс CarsController
обновляется с целью использования службы ASP.NET Core вместо уровня доступа к данным AutoLot
.
Вы, читатель этой книги, и есть главный ее критик. Мы ценим ваше мнение и хотим знать, что было сделано нами правильно, что можно было сделать лучше и что еще вы хотели бы увидеть изданным нами. Нам интересны любые ваши замечания в наш адрес.
Мы ждем ваших комментариев и надеемся на них. Вы можете прислать нам электронное письмо либо просто посетить наш веб-сайт и оставить свои замечания там. Одним словом, любым удобным для вас способом дайте нам знать, нравится ли вам эта книга, а также выскажите свое мнение о том, как сделать наши книги более интересными