Skip to content

WPF WebAPI client with an ASP.NET Core API service using Entity Framework Core, or a Python Flask API service using MariaDB.

Notifications You must be signed in to change notification settings

matthegg5/FriendOrganiser

Repository files navigation

This is a WPF Windows Desktop application that initially followed an online tutorial for the "Friend Organiser" use case, but I extended the tutorial to convert the WPF Desktop App to use an API service for its data persistence instead of local ORM direct to database. I've also recreated the server endpoint in Python using Flask, and Ruby On Rails using Active Record, for no reason whatsoever.

Buzzwords - UI
WPF
.NET 8.0 C#
Autofac Dependency Injection container
Prism EventAggregator (Pub-Sub Events between View Models)
Model-View-ViewModel (MVVM)
TPL Async
WebAPI client

Buzzwords - API
.NET 8.0 C#
WebAPI Service
TPL Async
MediatR
Automapper
Fluent Validation
Command-Query-Responsibility-Segregation
Entity Framework Core

Frequently used commands (for the .NET backend)\

Create a data migration

dotnet ef migrations add InitialCreate --project ./Core/FriendOrganiser.Persistence/FriendOrganiser.Persistence.csproj --startup-project ./API/FriendOrganiser.API/FriendOrganiser.API.csproj

Run migrations against the database

dotnet ef database update --project ./Core/FriendOrganiser.Persistence/FriendOrganiser.Persistence.csproj --startup-project ./API/FriendOrganiser.API/FriendOrganiser.API.csproj

(For the Python backend)

Set up a MariaDB instance and use the "create-and-seed-database.sql" file to initialise the database. The connection details can be maintained in the ExecuteDatabaseStatement.py file

(For the Ruby backend)
Version required: 3.3.6

rails db:create
rails db:migrate
rails db:seed
rails server --binding=0.0.0.0 --port=7020

About

WPF WebAPI client with an ASP.NET Core API service using Entity Framework Core, or a Python Flask API service using MariaDB.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published