From 30c3621deb4630d376d34891cbc1d081a1d1e0a5 Mon Sep 17 00:00:00 2001 From: Kevin Matsubara Date: Mon, 14 Apr 2025 12:55:08 +0200 Subject: [PATCH] Return TeamDto instead of Team model for API. --- .../Controllers/TeamsController.cs | 17 +++++++++++++++-- EntityFrameworkCore.API/Models/TeamDto.cs | 8 ++++++++ 2 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 EntityFrameworkCore.API/Models/TeamDto.cs diff --git a/EntityFrameworkCore.API/Controllers/TeamsController.cs b/EntityFrameworkCore.API/Controllers/TeamsController.cs index 869f4be..5040852 100644 --- a/EntityFrameworkCore.API/Controllers/TeamsController.cs +++ b/EntityFrameworkCore.API/Controllers/TeamsController.cs @@ -23,9 +23,22 @@ namespace EntityFrameworkCore.API.Controllers // GET: api/Teams [HttpGet] - public async Task>> GetTeams() + public async Task>> GetTeams() { - return await _context.Teams.ToListAsync(); + if (_context.Teams == null) + { + return NotFound(); + } + + var teams = await _context.Teams + .Select(t => new TeamDto + { + Id = t.Id, + Name = t.Name, + CoachName = t.Coach.Name + }) + .ToListAsync(); + return teams; } // GET: api/Teams/5 diff --git a/EntityFrameworkCore.API/Models/TeamDto.cs b/EntityFrameworkCore.API/Models/TeamDto.cs new file mode 100644 index 0000000..ab434ac --- /dev/null +++ b/EntityFrameworkCore.API/Models/TeamDto.cs @@ -0,0 +1,8 @@ +namespace EntityFrameworkCore.API; + +public class TeamDto +{ + public int Id { get; set; } + public string Name { get; set; } + public string CoachName { get; set; } +}