Endpoints
What is it about?
Endpoints for POST, GET, PUT and DELETE request that creates a controller and request model.
Examples
Creating an Endpoint
frontier dotnet add endpoint [name-of-endpoint]
The command above will generate two files located at: ProjectName/src/ProjectNameApi.Api/Endpoints/NameOfEndpoint/
Generates NameOfEndpointcontroller.cs
using Mediator;
using Microsoft.AspNetCore.Mvc;
namespace ProjectName.Api.Endpoints.NameOfEndpoint
{
[Produces("application/json")]
[ApiController]
public class NameOfEndpoint : ControllerBase
{
private readonly IMediator _mediator;
public NameOfEndpoint(IMediator mediator)
{
_mediator = mediator;
}
/// <summary>
/// This is a simple GET request
/// </summary>
/// <param name="request"></param>
/// <returns></returns>
[HttpPost]
[ApiVersion("1.0")]
[Route("api/v{version:apiVersion}/NameOfEndpoint/sample")]
[ProducesResponseType(StatusCodes.Status200OK)]
public async Task<IActionResult> Sample(SampleRequest request)
{
Console.WriteLine($"Property1: {request.Property1}");
Console.WriteLine($"Property2: {request.Property2}");
var result = await _mediator.Send(command);
return Ok(result);
}
}
}
Generates SampleRequest.cs
namespace MyCoolApi.Api.Endpoints.Order
{
public class SampleRequest
{
public string Property1 { get; set; } = string.Empty;
public string Property2 { get; set; } = string.Empty;
}
}
Table of Contents