Controlling serialization
As described in the previous sections, minimal APIs only provide built-in support for the JSON format. In particular, the framework uses System.Text.Json
for serialization and deserialization. In controller-based APIs, we can change this default and use JSON.NET instead. This is not possible when working with minimal APIs: we can’t replace the serializer at all.
The built-in serializer uses the following options:
- Case-insensitive property names during serialization
- Camel case property naming policy
- Support for quoted numbers (JSON strings for number properties)
Note
We can find more information about the System.Text.Json
namespace and all the APIs it provides at the following link: https://docs.microsoft.com/dotnet/api/system.text.json.
In controller-based APIs, we can customize these settings by calling AddJsonOptions()
fluently after AddControllers()
. In minimal APIs, we can’t use this approach since we don&...