added exception handling

This commit is contained in:
marco committed 2026-08-31 13:43:43 +02:00
1 parent ffb308dc52
commit 5b64b32721
2 files changed
+18 -11

No files matched your search

+15 -7
View File
@@ -1,19 +1,15 @@
using Microsoft.AspNetCore.Mvc;
using api.Services;
using api.DTOs;
using Microsoft.EntityFrameworkCore;
namespace api.Controllers
{
[ApiController]
[Route("api/[controller]")]
public class PersonController : ControllerBase
public class PersonController(IPersonService personService) : ControllerBase
{
private readonly IPersonService _personService;
public PersonController(IPersonService personService)
{
_personService = personService;
}
private readonly IPersonService _personService = personService;
[HttpGet]
public async Task<IActionResult> GetAll()
@@ -39,8 +35,20 @@ namespace api.Controllers
[HttpPost]
public async Task<IActionResult> Add(PersonDto personDto)
{
try
{
await _personService.AddPersonAsync(personDto);
return CreatedAtAction(nameof(GetByUsername), new { username = personDto.Username }, personDto);
}
catch (ArgumentException ex)
{
return BadRequest(ex.Message);
}
catch (DbUpdateException)
{
return Conflict("Username already exists");
}
}
[HttpPut("username/{username}")]