Newtonsoft.Json by James Newton-King

<PackageReference Include="Newtonsoft.Json" Version="11.0.2" />

 ConstructorHandling

public enum ConstructorHandling
Specifies how constructors are used when initializing objects during deserialization by the JsonSerializer.

Json.NET will use a non-public default constructor before falling back to a parameterized constructor.

Default = 0

First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor.