Tournament Tracker is a desktop application that has both WinForm UI and a WPF UI.
This application allow user to create and a manage an elimination-style tournament. This application offer the following:
- Set Entree Fee and Prizes. Total Prize must be lower than total collected fees.
- Choosing between high-score or low-score win.
- Tournament with any number of teams (the app will create byes to complete the tournament).
- The team order are randomize using C# System.Random which should provide good enough randomness for a tournament.
- Email notification to each player to notify of upcoming and when the tournament ends.
- Choose between Sql Server or CSV File for Data Storage.
- Clone the code and open with visual studio.
- On Solution Explorer, Right-Click on TrackerData Project and Publish the database to MSSQLLocalDB and use window authentication.
- On SQL Server Object Explorer, locate and double-click on the published database. After that, right-click on the database and select properties. Copy the connection string.
- On Solution Explorer, Open TrackerWinFormUI or TrackerWPFUI depending on which UI you prefer, Open appsettings.json file.
- In appsettings.json:
- Replace the ConnectionStrings with the connection string you copied earlier.
- filePath is for defining the path the save the CSV data (if used).
- highScoreWin is a flag to decide whether system should consider team with higher score as the winner or use lower score instead.
- Sender Email and Sender Name is for email notification system.
- MailSettings section define the email sending method. default setting is using localhost.
- In Program.cs, line 'GlobalConfig.InitiallizeConnection(DatabaseType.Sql);' define whether the app will use SQL server or CSV file as database
- Build and enjoy
The original project use .Net Framework 4.5 with WinForm UI up to this commit is made by referring to IAmTimCorey Project Series. All subsequence improvement including upgrade to .NET Core and add on WPF UI are my personal work.