Enterprise-grade ASP.NET Core API with Entity Framework and Azure integration
[ApiController]
[Route("api/[controller]")]
[Authorize]
public class ProductsController : ControllerBase
{
private readonly IProductService _service;
public ProductsController(IProductService service)
{
_service = service;
}
[HttpGet]
public async Task<ActionResult<List<ProductDto>> GetAll()
{
return Ok(await _service.GetAllAsync());
}
[HttpPost]
public async Task<ActionResult<ProductDto> Create(
[FromBody] CreateProductRequest request)
{
var product = await _service.CreateAsync(request);
return CreatedAtAction(nameof(GetAll), new { id = product.Id }, product);
}
}