BoletoSimples / boletosimples-csharp

Biblioteca C# para API do Boleto Simples (DEPRECATED)
https://developers.kobana.com.br
Apache License 2.0
8 stars 5 forks source link

Serialização de corpo de requisição muda o Contract Resolver globalmente #6

Open fabiocmarques opened 6 years ago

fabiocmarques commented 6 years ago

Na classe "HttpClientRequestBuilder", método "AndOptionalContent" há uma mudança no Contract Resolver Default, o que me causou diversos problemas, já que estava usando outro método de serialização:

JsonConvert.DefaultSettings = () => _jsonDefaultSettings;

Em meu projeto, que usa ASP.NET Core 2.0, ao invés de mudar a configuração de serialização global (comentando ou excluindo a linha de código acima), passo os settings como parâmetro da função:

var jsonContent = JsonConvert.SerializeObject(content, _jsonDefaultSettings);

Isso evita problemas de serialização em outras partes do código, que podem não precisar de configurações de serialização diferentes da padrão.

rscouto commented 6 years ago

Boa noite @fabiocmarques,

Desculpe pelo equívoco, realmente não tinha motivo algum para eu sobrescrever o comportamento do contrato resolver default, isso pode realmente causar inumeros problemas inclusive a outras pessoas que utilizam o client.

Muito obrigado pelo seu apontamento!

Vou lançar uma versão com a correção em poucos dias, estou pegado no trabalho mas assim que puder vou lançar.