Dotnet fork project for Databaskonstruktion
  • C# 55.6%
  • HTML 32%
  • CSS 11.1%
  • JavaScript 1.3%
Find a file
2026-10-19 16:10:58 +02:00
bin/Release/net10.0 changes 2026-10-19 15:56:55 +02:00
Controllers changes 2026-10-17 16:20:24 +02:00
Models changes 2026-10-17 16:54:56 +02:00
obj changes 2026-10-19 15:56:55 +02:00
Properties Seeded project including gitignore for bin / obj 2026-09-28 10:06:09 +02:00
Published changes 2026-10-19 15:56:55 +02:00
Views changes 2026-10-19 15:49:38 +02:00
wwwroot changes 2026-10-19 15:49:38 +02:00
.gitignore Seeded project including gitignore for bin / obj 2026-09-28 10:06:09 +02:00
appsettings.Development.json changes 2026-10-17 16:12:58 +02:00
appsettings.json changes 2026-10-17 16:12:58 +02:00
Program.cs cahnges 2026-10-17 16:15:50 +02:00
README.md Update README.md 2026-10-19 16:10:58 +02:00
WebApplication1.csproj changes 2026-10-17 13:27:22 +02:00
WebApplication1.csproj.user Seeded project including gitignore for bin / obj 2026-09-28 10:06:09 +02:00

PUCKO – Del 3: ASP.NET Core MVC

Detta projekt är en webbapplikation för databasen PUCKO, utvecklad i C# med ASP.NET Core MVC och MySQL. Applikationen används för att visa och hantera operationer, hjälpmedel, bokningar och rapporter.

Webbplats

https://wwwlab.webug.se/databaskonstruktion/a24ludka/app/

Projektets uppbyggnad

  • Controllers: HomeController, OperationsController, ToolsController och ReportsController tar emot anrop från webbplatsen och väljer vilka funktioner som ska köras.
  • Models: Db hanterar databasanslutning och gemensamma databasoperationer. OperationsModel, ToolsModel och ReportsModel innehåller SQL-frågor och anrop till lagrade procedurer.
  • Views: Razor-filer (.cshtml) visar tabeller, formulär, sökfält och resultat för användaren.
  • Program.cs: Registrerar MVC och modellerna samt konfigurerar routing.

Funktioner

Operationer

Sidan visar operationer i en tabell. Användaren kan söka efter kodnamn och filtrera på gruppledare och region. Det går också att ändra slutdatum för en operation med ett formulär. Ändringen görs med UPDATE i OperationsModel.

Hjälpmedel och bokningar

Sidan visar hjälpmedel och bokningar. Användaren kan boka hjälpmedel genom proceduren BokaHjalpmedel, ta bort en bokning med DELETE och hämta antal hjälpmedel för en operation genom proceduren GETOPTOOLCOUNT. Bokningarna hämtas med en fråga som använder LEFT JOIN mellan Operation och OperationHjalpmedel.

Rapporter

Sidan visar rapporter och låter användaren skapa en ny rapport med INSERT. Rapporttext kan uppdateras med den lagrade proceduren SkrivRapportText. Rapportuppgifterna hämtas bland annat från vyn v_RapportFull.

Exempel på användarflöde

  1. Användaren öppnar sidan Hjälpmedel och bokningar.
  2. Användaren väljer en operation och ett hjälpmedel i formuläret.
  3. Formuläret skickas till ToolsController.Book.
  4. Controllern kontrollerar inmatningen och anropar ToolsModel.Book.
  5. Modellen anropar den lagrade proceduren BokaHjalpmedel i MySQL.
  6. Användaren skickas tillbaka till sidan och får ett resultatmeddelande.

Databas och säkerhet

Applikationen använder MySqlConnector för kommunikation med MySQL. SQL-frågor och proceduranrop använder parametrar. Formulär som ändrar data skickas med POST och skyddas med antiförfalskningstoken. Databasfel hanteras och kan loggas via proceduren LoggaForbjudenAtgard.

Körning

Projektet byggs och publiceras med .NET CLI:

dotnet publish -c Release -o ./Published --self-contained false

Det publicerade innehållet laddas upp till skolans webbserver. Databasanslutningen måste vara konfigurerad för den aktuella miljön. Lägg inte in lösenord eller andra hemligheter i README eller Git.