I'm working on a minimal API in .NET Core 6 with OpenApi support.
I have a Resolution model defined like this:
using System.ComponentModel.DataAnnotations;
public struct Resolution
{
[Required, Range(1, 800)]
public int W { get; set; }
[Required, Range(1, 600)]
public int H { get; set; }
}
Then I have a POST endpoint definition like this:
app.MapPut("/resolutions", (Resolution res) =>
{
//Some logic here
return Results.Ok(new { Message = "Resource updated successfully" });
})
.Produces(200)
.Produces(404)
.WithName("PutResolution");
Case 1. I send a PUT request (out of range value fore w):
"resolution": {
"w": 1024,
"h": 400
}
Result: 200 OK.
Case 2: I send a PUT request (wrong data type for w):
"resolution": {
"w": "xl",
"h": 400
}
Result: 400 JsonException
Issue:
Questions:
As mentioned in this document,There's no built-in support for validation in .NET 6 Minimal API.
If you do want it, you could try third party solutions such as this blog.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With