This repository includes the solutions for the Software Development Project:
- Mini Project: Supplier Management Web Application
- Exercise 1: Array Comparison
- Exercise 2: CSV File Processor
| Project | Description |
|---|---|
| Supplier Portal Client | Angular frontend for managing suppliers (Mini Project) |
| Supplier Portal Server | .NET 9 Web API backend for supplier data management (Mini Project) |
| Exercise 1 | C# Console App comparing two integer lists |
| Exercise 2 | C# CSV Processor that outputs sorted names and addresses |
- Repository: Supplier Portal Client
- Framework: Angular 17
- Development Server:
- Run
ng serve - Open
http://localhost:4200/
- Run
- Backend API URL:
https://localhost:7158 - Features:
- Add new suppliers (company name and phone number)
- Search suppliers by company name
- Repository: Supplier Portal Server
- Framework: .NET 9 Web API
- Database: MS SQL Server
- Navigate to the
supplier-portal-serverproject folder. - Choose one of the two options below:
| Option | Creates DB | Creates table | Seeds data | Command |
|---|---|---|---|---|
| A – EF Core | ✅ | ✅ (via migrations) | ❌ | dotnet ef database update |
| B – SQL scripts | ✅ | ✅ | ✅ | See Option B panel |
Option B — Run SQL scripts manually
📄 Script files| What it does | File |
|---|---|
| Create DB only | create_supplier_db.sql |
| Seed data only | seed_suppliers.sql |
| Create and seed (one-shot) | create_supplier_db_and_seed_suppliers.sql |
Note:
The database consists of only one table (Suppliers) as required for the proof of concept.
- Three-tier architecture:
- Presentation Layer (Angular)
- Services Layer (.NET 9 Web API)
- Data Layer (EF Core with MS SQL)
- Repository: Exercise 1
- Description:
- Find common elements between two integer arrays.
- Find elements unique to each array.
- Technology: C# Console Application.
- Repository: CsvDataProcessor
- Description:
- Read a CSV file.
- Output two text files:
- First and last name frequencies, sorted by frequency descending and then alphabetically.
- Addresses sorted by street name alphabetically.
- Includes:
- Unit tests using xUnit.
- Make sure you have Node.js, Angular CLI, .NET 9 SDK, and SQL Server installed.
- Clone each repository.
- Follow the setup instructions provided in each project folder.
Developer: Nkosinathi Ngele
Email: nkosinathi.ngele.dev@gmail.com
Phone: 073 695 4921
