Minimal AP Versioning
MathavanN opened this issue · comments
I am trying to implement API Versioning in Minimal API
Below is my code sample. Carter support this implementation?
public class AboutEndPoints : ICarterModule
{
public void AddRoutes(IEndpointRouteBuilder app)
{
var versionSet = app.NewApiVersionSet()
.HasApiVersion(new ApiVersion(1.0))
.HasApiVersion(new ApiVersion(2.0))
.Build();
var group = app.MapGroup("/api/about");
group.MapGet("", GetAboutV1)
.WithName("about")
.WithOpenApi()
.WithApiVersionSet(versionSet)
.MapToApiVersion(1.0);
group.MapGet("", GetAboutV2)
.WithName("about")
.WithOpenApi()
.WithApiVersionSet(versionSet)
.MapToApiVersion(2.0);
}
public static IResult GetAboutV1(HttpContext context)
{
var apiVersion = context.GetRequestedApiVersion();
return TypedResults.Ok(new { data = "Product Service v1.0.0", apiVersion = apiVersion!.ToString() });
}
public static IResult GetAboutV2(HttpContext context)
{
var apiVersion = context.GetRequestedApiVersion();
return TypedResults.Ok(new { data = "Product Service v1.0.0", apiVersion = apiVersion!.ToString() });
}
}
.WithName("about") should be unique for API Versioning
Did you figure this out?