Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Geschenkliste

ASP.NET Core C# Bootstrap License: MIT

Eine einfache, moderne Geschenkliste-Webanwendung mit ASP.NET Core MVC, Entity Framework Core und ASP.NET Identity. Die App ermöglicht es, Geschenkideen zu erfassen, als erledigt zu markieren, zu löschen und die Liste bei Bedarf zurückzusetzen.


Inhaltsverzeichnis


Über das Projekt

Geschenkliste ist eine kleine Webanwendung zum Verwalten von Geschenkideen. Benutzer können Geschenkvorschläge anlegen, mit einem Namen und einer Farbe versehen und anschließend in der zentralen Liste anzeigen lassen. Einzelne Einträge lassen sich als erledigt markieren oder löschen. Zusätzlich gibt es eine Admin-Funktion, mit der die gesamte Liste zurückgesetzt werden kann.

Das Projekt wurde als ASP.NET Core 6 MVC Anwendung umgesetzt und verwendet SQL Server als Datenbank über Entity Framework Core.


Features

  • Geschenkideen anlegen
  • Geschenkideen in einer Liste anzeigen
  • Einträge als erledigt markieren
  • Einzelne Einträge löschen
  • Gesamte Liste zurücksetzen
  • Benutzerverwaltung über ASP.NET Identity
  • Farbauswahl für Einträge
  • Bootstrap-UI mit responsivem Layout
  • Fehlerseite und Development-Migration-Endpunkt

Tech-Stack

  • Framework: ASP.NET Core 6.0
  • Sprache: C#
  • Datenbank: SQL Server
  • ORM: Entity Framework Core
  • Auth: ASP.NET Identity
  • Frontend: Razor Views, HTML, CSS, JavaScript, Bootstrap 5

Projektstruktur

PLF_11112024_Rautner/
├── Controllers/
│   ├── HomeController.cs
│   └── GeschenkController.cs
├── Data/
│   └── ApplicationDbContext.cs
├── Migrations/
├── Models/
├── Views/
│   ├── Home/
│   ├── Geschenk/
│   └── Shared/
├── wwwroot/
├── Program.cs
└── PLF_11112024_Rautner.csproj

Wichtige Komponenten

  • HomeController: zeigt die Geschenkliste, markiert Einträge als erledigt, löscht Einträge und kann die komplette Liste zurücksetzen
  • GeschenkController: stellt das Formular zum Erstellen neuer Einträge bereit und speichert neue Geschenkideen in der Datenbank
  • ApplicationDbContext: verwaltet die Datenbankverbindung und die GeschenkModels-Tabelle
  • Views: enthalten die Razor-Seiten für Liste, Formular und Layout

Voraussetzungen

Bevor du das Projekt lokal startest, solltest du Folgendes installiert haben:

  • .NET SDK 6.0
  • SQL Server oder SQL Server Express
  • Visual Studio 2022 oder VS Code
  • Optional: SQL Server Management Studio

Lokales Setup

1. Repository klonen

git clone https://github.com/StefanRautner/Geschenkliste.git
cd Geschenkliste

2. Projekt öffnen

Öffne die Solution:

PLF_11112024_Rautner.sln

3. Connection String konfigurieren

Passe die Datenbankverbindung in appsettings.json an:

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=.;Database=GeschenklisteDb;Trusted_Connection=True;TrustServerCertificate=True"
  }
}

Wenn du SQL Server Express oder LocalDB verwendest, musst du den Servernamen entsprechend anpassen.

4. Migrationen anwenden

Falls noch keine Datenbank existiert, erstelle sie mit:

dotnet ef database update

5. Anwendung starten

dotnet run --project PLF_11112024_Rautner

Danach ist die App im Browser erreichbar, meist unter:

https://localhost:xxxx

Datenbank

Die Anwendung verwendet Entity Framework Core mit einer ApplicationDbContext-Klasse.

Enthaltene Tabellen

  • AspNetUsers: Benutzerverwaltung durch ASP.NET Identity
  • GeschenkModels: speichert Geschenkideen

Geschenkmodell

Aus dem Projektverhalten ergeben sich u. a. folgende Felder:

  • Titel des Geschenks
  • Empfänger / Für wen das Geschenk gedacht ist
  • Farbwert für die Darstellung
  • Erstellername
  • Status Erledigt

Funktionen im Detail

Geschenk hinzufügen

Auf der Seite Geschenk/Index kann eine neue Geschenkidee eingetragen werden. Dabei werden Titel und Empfänger erfasst. Angemeldete Benutzer können zusätzlich eine Farbe auswählen.

Liste anzeigen

Die Startseite zeigt alle Geschenkideen in einer Tabelle an. Die Darstellung verwendet die hinterlegte Farbe des Eintrags als Hintergrund.

Als erledigt markieren

Ein Eintrag kann per Aktion als erledigt markiert werden. Der Status wird in der Datenbank gespeichert.

Geschenk löschen

Einzelne Geschenkideen können aus der Liste entfernt werden.

Liste zurücksetzen

Für den Benutzer god@heaven steht eine Reset-Funktion zur Verfügung, die alle Einträge löscht.


Screenshots

Hier kannst du später echte Screenshots ergänzen, z. B. von:

  • der Startseite
  • dem Formular zum Hinzufügen eines Geschenks
  • der Liste mit farbigen Einträgen
  • der Reset-Funktion

Beispiel:

![Startseite](docs/screenshots/home.png)

Deployment

Lokales Hosting

Die Anwendung kann auf einem IIS, Azure App Service oder einem anderen ASP.NET Core kompatiblen Hosting-Dienst betrieben werden.

Wichtige Punkte vor dem Deploy

  • appsettings.json für Produktionsumgebung anpassen
  • Connection String setzen
  • Migrationen gegen die Produktionsdatenbank ausführen
  • HTTPS aktivieren

Roadmap

Mögliche Erweiterungen für die Zukunft:

  • Editieren bestehender Geschenkideen
  • Filter nach Benutzer oder Status
  • Suchfunktion
  • Prioritäten oder Kategorien
  • Bessere Rollenverwaltung für Admin-Funktionen
  • Mobile-optimierte Detailansicht

Mitwirken

Beiträge sind willkommen.

Vorschlag für Änderungen

  1. Fork des Repositories erstellen
  2. Feature-Branch anlegen
  3. Änderungen umsetzen
  4. Pull Request erstellen

Lizenz

Dieses Projekt steht unter der MIT License.


Autor

Stefan Rautner

Wenn du möchtest, kann ich dir als Nächstes auch noch:

  • eine kürzere, professionellere README-Version schreiben,
  • Badges und Screenshots ergänzen,
  • oder die README direkt ins Repository einspielen.

About

Asp .Net Project

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages