# 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 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