Перейти к основному содержимому

О разделе

Здесь — сквозной практикум для разработчика на C#, который хочет собрать полноценное клиент-серверное десктоп-приложение на Windows. Вы пройдёте путь от первого окна WPF до REST API, клиента на Prism, автотестов и итогового проекта TaskDesk.

Базовый одиночный WPF без сети уже разобран в Первая форма WPF — XAML, стили и шаблоны. Короткие примеры "окно + кнопка + TextBox" с построчным разбором — C# WinForms и WPF — простые окна. Этот маршрут продолжает линию WPF и добавляет сервер, DI, навигацию по регионам и проверку качества.


Сценарий TaskDesk

TaskDesk — учебный менеджер задач для небольшой команды:

КомпонентСтекРоль
TaskDesk.ApiASP.NET Core 8, Web APICRUD задач, фильтры, JSON по REST
TaskDesk.ClientWPF + Prism + MVVMОкно со списком, формой и статусом подключения к API
TaskDesk.CoreClass LibraryОбщие DTO и контракты между клиентом и сервером

Синхронная связь — HTTP/JSON (GET/POST/PUT/DELETE на /api/v1/tasks). Клиент хранит состояние UI в ViewModel, данные — на сервере.


Маршрут по шагам

ШагСтатьяСодержание
1WPF и XAML — введениеПлатформа, дерево элементов, привязки, связь с Первая форма WPF — XAML, стили и шаблоны
2Основы MVVMModel, View, ViewModel, ICommand, INotifyPropertyChanged, CommunityToolkit
3Сервер на ASP.NET Core Web APIREST, контроллеры, DTO, Swagger, CORS для десктоп-клиента
4Клиент WPF на PrismРегионы, навигация, DI, HttpClient, обработка ошибок сети
5Тестирование запросов и unit-тестыPostman, WebApplicationFactory, xUnit + Moq для ViewModel и API
6Итоговый проект TaskDeskSolution из трёх проектов, чек-лист сборки, типичные сбои

Что понадобится

  • Windows 10/11 и .NET SDK 8+
  • Visual Studio 2022 (рабочая нагрузка "Разработка классических приложений .NET") или VS Code + C# Dev Kit
  • Postman или встроенный Swagger UI
  • Базовое знакомство с C# и HTTP
С чего начать, если WPF впервые

Сначала пройдите Первая форма WPF — XAML, стили и шаблоны (локальные заметки без сервера), затем вернитесь сюда. Параллельно держите открытым справочник XAML и Разработка приложений для Windows (Microsoft Learn) — карту стеков Windows.


Как учиться по разделу

  1. Прочитайте шаг 1 и шаг 2, соберите минимальное окно с ViewModel.
  2. Поднимите API по шагу 3 и проверьте эндпоинты в Swagger или Postman.
  3. Создайте клиент Prism по шагу 4, укажите базовый URL API в appsettings.json.
  4. Закройте цикл тестами из шага 5.
  5. Сверьте итоговую структуру с шагом 6 и чек-листом самопроверки.

Связь с теорией

ТемаМатериалы энциклопедии
WPF, DirectX, выбор стекаРазработка приложений для Windows (Microsoft Learn), платформа .NET UI
MVVM, потоки UIОсобенности разработки десктопных приложений
REST, JSONREST, Первая программа на ASP.NET Core
Архитектурные паттерныdesign-patterns MVVM
Элементы WPFСправочник по WPF — элементы UI