ATUALIZAÇÃO [2019-12-23]: em parte devido à contribuição da comunidade vocal , esse problema foi adicionado ao roteiro do .NET 5.0.
UPDATE [2019-10-10]: se estiver interessado em ver esse comportamento implementado paraSystem.Text.Json.JsonSerializervá para a edição aberta do GitHub, apontada por Chris Yungmann, e pesa.
Em vez disso:
JsonSerializerOptions options = new JsonSerializerOptions
{
PropertyNamingPolicy = JsonNamingPolicy.CamelCase
// etc.
};
JsonSerializer.Deserialize<SomeObject>(someJsonString, options);
Eu gostaria de fazer algo assim:
// This property is a pleasant fiction
JsonSerializer.DefaultSettings = new JsonSerializerOptions
{
PropertyNamingPolicy = JsonNamingPolicy.CamelCase
// etc.
};
// This uses my options
JsonSerializer.Deserialize<SomeObject>(someJsonString);
// And somewhere else in the same codebase...
// This also uses my options
JsonSerializer.Deserialize<SomeOtherObject>(someOtherJsonString);
A esperança é não ter que passar uma instância dos casos JsonSerializerOptionsmais comuns e substituir a exceção, não a regra.
Conforme indicado nestas perguntas e respostas , esse é um recurso útil do Json.Net. Olhei na documentação para o System.Text.Jsonbem como este repo GitHub for .NET Core. E esse aqui .
Parece não haver um analógico para gerenciar padrões de serialização JSON no .NET Core 3. Ou estou ignorando isso?
There doesn't seem to be an analog for managing JSON serialization defaults in Core-3- você está falando sobre solicitações de entrada e saída da sua API? ou solicitações e respostas a outros recursos?