Production Architecture Deep Dive
One runnable Wisej.NET 4 application per module, built from the course's lesson guide, applied-concepts
guide, lab guide and walkthrough video. The app under study is the course's TicketOps Console.
Each sample contains only the screen the lab guide and the video build; diagnostics go to the server
console through ILog. Each folder has its own README.md (what the screen contains and where each
deliverable lives) and a docs/ folder with the lab deliverables.
Requirements: .NET 10 SDK and the Wisej-4 4.1.0 NuGet package. Nothing is deployed anywhere.
The modules
| Module | What it builds |
|---|---|
| 1 · Production Architecture & Project Structure | the junior app refactored into Views/Controls/Services/Domain/Data/Infrastructure/Resources/Diagnostics, ITicketService + fake TicketService, thin handlers, every path visible, architecture note |
| 2 · Startup, Configuration, Session State & Lifetime | session-scoped SessionContext, diagnostics page (global vs per-session values), static-state audit |
| 3 · Responsive Layouts, Client Profiles & Composition | responsive TicketWorkspace UserControl (desktop / tablet / phone), ClientProfiles.json, reusable SearchBar |
| 4 · Data Binding, DataGridView & Data Workflows | Work Order grid: observable model, BindingSource, search/filter, master-detail editor, dirty tracking, formatted columns |
| 5 · Validation, Error UX & Safe Save Pipelines | validation rules, SaveCommand, field errors + summary panel, safe save pipeline, test cases |
| 6 · Modal Workflows, Dialog Results & Transactional UI | ApprovalDialog with a typed ApprovalDialogResult, ApprovalService, test cases, workflow diagram |
| 7 · Background Tasks, Real-Time Updates & Sync | background CSV import (Application.StartTask + Application.Update), progress + log panel, cancellation, per-row errors |
| 8 · Services, DI & Testable UI | Application.Services registration (fake + production profiles), five injected services, presenter, lifetime table |
| 9 · JavaScript Integration & Widget Interop | Ctrl+K focuses the global search, server-confirmed clipboard copy, security note per interop point |
| 10 · Theming, Resources, Localization & Modernization | light/dark theme switch, StatusChip UserControl, two cultures, culture-aware formatting, modernization checklist |
| 11 · Security, Authentication & Safe Server Boundaries | login gate, permission service, service-level authorization, safe HTML policy, audit log, security checklist |
| 12 · Deployment, Diagnostics, Load Balancing & Capstone | HealthCheck.json, diagnostics page, deployment checklist, release/rollback notes, demo script |
Run any module from its TicketOps project folder. The projects multi-target net10.0-windows and
net10.0, so dotnet run needs a framework (-f net10.0, or -f net10.0-windows), e.g.
cd "LearnWisej-Samples/Production Architecture Deep Dive/Module 4/TicketOps"
dotnet run -f net10.0 --urls http://localhost:5104
or open the TicketOps.slnx in the module folder with Visual Studio and press F5.