first commit

This commit is contained in:
Mark Kors
2025-11-11 10:48:43 +01:00
parent aa6427edde
commit f8f3450b73

128
README.md
View File

@@ -1 +1,129 @@
# SQLite_test
Een WPF desktop applicatie voor het beheren van gebruikersgegevens met SQLite database ondersteuning.
## Beschrijving
Dit project is een demonstratie-applicatie die laat zien hoe je SQLite kunt integreren in een WPF-applicatie voor het uitvoeren van CRUD-operaties (Create, Read, Update, Delete). De applicatie biedt een eenvoudige gebruikersinterface voor het toevoegen en verwijderen van gebruikersgegevens uit een lokale SQLite database.
## Technologieën
- **.NET 8.0** - Target framework
- **WPF (Windows Presentation Foundation)** - UI framework
- **SQLite** - Lokale database
- **System.Data.SQLite** (versie 1.0.119) - SQLite ADO.NET provider
## Projectstructuur
```
SQLite_test/
├── SQLite_test/
│ ├── Classes/
│ │ ├── Crud.cs # Basis class voor database operaties
│ │ └── User.cs # User class met CRUD functionaliteit
│ ├── MainWindow.xaml # UI definitie
│ ├── MainWindow.xaml.cs # UI code-behind
│ ├── App.xaml # Applicatie configuratie
│ └── SQLite_test.csproj # Project bestand
└── README.md
```
## Functionaliteit
- **Database Connectie**: Automatische verbinding met een lokale SQLite database (`mydatabase.db`)
- **Tabel Aanmaken**: Automatische aanmaak van de `Users` tabel indien deze nog niet bestaat
- **Gebruiker Toevoegen**: Voeg nieuwe gebruikers toe aan de database met naam en leeftijd
- **Gebruiker Verwijderen**: Verwijder gebruikers op basis van ID (in ontwikkeling)
### Database Schema
De applicatie gebruikt een `Users` tabel met de volgende structuur:
| Kolom | Type | Beschrijving |
|-------|---------|------------------------|
| Id | INTEGER | Primary key (auto-increment) |
| Name | TEXT | Naam van de gebruiker |
| Age | INT | Leeftijd van de gebruiker |
## Installatie
### Vereisten
- Windows besturingssysteem
- .NET 8.0 SDK of hoger
- Visual Studio 2022 (aanbevolen) of Visual Studio Code
### Stappen
1. Clone de repository:
```bash
git clone <repository-url>
cd SQLite_test
```
2. Open de solution:
```bash
SQLite_test.sln
```
3. Restore NuGet packages:
```bash
dotnet restore
```
4. Build het project:
```bash
dotnet build
```
5. Run de applicatie:
```bash
dotnet run --project SQLite_test
```
## Gebruik
1. Start de applicatie
2. De database verbinding wordt automatisch tot stand gebracht
3. Gebruik de **Add** knop om een nieuwe gebruiker toe te voegen
4. Gebruik de **Delete** knop om een gebruiker te verwijderen (voer het ID in wanneer gevraagd)
## Development
### CRUD Class Structuur
De applicatie gebruikt een object-georiënteerde benadering met een basis `Crud` class die geërfd wordt door de `User` class:
- **Crud.cs**: Bevat de database connectie en basis CRUD methoden
- **User.cs**: Erft van `Crud` en biedt user-specifieke operaties
### Uitbreidingsmogelijkheden
De applicatie kan uitgebreid worden met:
- Read operaties om gebruikers weer te geven in een DataGrid
- Update functionaliteit voor het bewerken van gebruikersgegevens
- Input validatie en error handling
- Data binding voor dynamische UI updates
- Zoek- en filterfunctionaliteit
## Database Bestand
De SQLite database wordt automatisch aangemaakt als `mydatabase.db` in de applicatie directory bij de eerste run.
## Troubleshooting
**Database connectie mislukt:**
- Controleer of de applicatie schrijfrechten heeft in de directory
- Check de Debug output voor specifieke foutmeldingen
**Build errors:**
- Zorg dat .NET 8.0 SDK is geïnstalleerd
- Restore NuGet packages met `dotnet restore`
## Licentie
Dit is een test/demonstratie project.
## Auteur
Mark K