Skip to content

a-einstein/WpfShop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WpfShop

Summary

Working desktop application for test and demo purpose based on WPF. It simulates limited shopping capabilities based on the AdventureWorks database.

Purpose

  • Explore coding techniques based on WPF and C#.
  • Explore unit and graphical tests by use of MS Unit Test, Moq and WinAppDriver.
  • Explore continuous integration by using combination of Git, GitHub, and Azure DevOps.

Context

  • This is a near equivalent of my PortableShop.
  • Currently the application is only tested on Windows 10 version 22H2.
  • Connected to Azure Devops self hosted build pipeline, including packaging, unit testing, and GUI testing. Current build status for master branch:
  • Azure DevOps release pipeline to GitHub.
  • See Release Notes for the latest developments.

Project aspects

  • WPF + C#.
  • MVVM.
  • .Net 8.
  • Prism/Unity Modules & Regions.
  • Unity dependency injection.
  • Client-server.
  • CoreWcf + SSL + domain + certificate.
  • Asynchronicity.
  • Globalized resources.
  • User controls.
  • Attached behaviours.
  • Basic styling.
  • Basic exploration of unit testing by means of MS Unit Test Framework.
  • GUI testing by means of WinAppDriver.
  • Mocking data for testing, applying Moq.
  • Transformation of configurations.
  • MSIX installation.
  • Click Once installation.

Prerequisites

  • The application must be configured for a running instance of my AdventureWorks services.
  • Use of the data service is on request. Contact the developer ahead.

Installation

The application is plug & play, but note the Prerequisites.

Currently there are 2 installation methods, which both start with these steps.

  • Download the appropriate .zip file under Assets at the releases page.
  • Extract if needed.
  • Continue with the method of choice below.
  • If needed, start the application. Either it will start 'empty' displaying a warning, or if the data service is running, one can 'shop' the contents.
  • Note that the application produces a .log file in its directory.
MSIX (recommended)
  • If not already done, install the certificate by right clicking on the .cer file. Choose Local Machine and select Trusted Root Certification Authorities as store.
  • Now install the application by double clicking the .msix file. If selected, the application starts right away.
  • Note that the application gets installed in the Windows Apps menu as CyclOne.WPF.WAP, and will not show up in the Programs and Features list.
  • Both starting and uninstallation (right click) are done in the Apps menu.
ClickOnce
  • Launch by setup.exe, allow it to continue if needed. Be aware of potentially hidden blockages by virus-defenders.
  • The application should start up right away, but may be hidden behind other windows.
  • The start menu gets the following folder added: Programs / Cyclone.WPF.ClickOnce / Cyclone.
  • Uninstallation can be done on: Control Panel / Program and Features / Cyclone.WPF.ClickOnce.
  • Updating is currently not supported, but can be done manually after uninstalling.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published