01
Schoolproject

Top2000

Een robuuste applicatie voor het beheren en inzien van muzikale ranglijsten. Ontwikkeld met een API- en MVC-architectuur en diepe database-integratie.

Top2000 preview

Belangrijkste functionaliteiten

  • //Overzicht van honderden nummers en artiesten
  • //Gedetailleerde statistieken en ranglijsten
  • //Persoonlijke afspeellijsten beheren en aanmaken
  • //Volledig Identity-systeem (inloggen/registreren)
  • //Gescheiden API en MVC frontend architectuur

Galerij

Project screenshot 1
Project screenshot 2

Technische aanpak

Het project bestaat uit drie lagen: Top2000-Api (Backend API met Entity Framework Core), Top2000-Library (Gedeelde datamodellen), en Top2000-MVC (Frontend met Razor Pages en controllers die de API aanspreken).

Projectstructuur

Top2000-Api
Controllers
Data
Top2000-MVC
Controllers
Views
Selecteer een bestand of map voor uitleg

Onder de motorkap

AfspeellijstenController.cs
[ApiController]
[Route("api/afspeellijsten")]
public class AfspeellijstenController : ControllerBase
{
    private readonly ApplicationDbContext _dbContext;

    public AfspeellijstenController(ApplicationDbContext dbContext)
    {
        _dbContext = dbContext;
    }

    [HttpPost]
    public async Task<IActionResult> AfspeellijstBewerken([FromBody] Playlist playlist)
    {
        if (playlist == null) return BadRequest("Ongeldige invoer.");
        _dbContext.Playlists.Add(playlist);
        await _dbContext.SaveChangesAsync();
        return Ok();
    }
}

Deze controller handelt inkomende POST-verzoeken af voor het aanmaken en bewerken van afspeellijsten, en slaat deze direct op via de ApplicationDbContext.