Я недавно обновился до последней Newtonsoft.Json
версии 12.0.2
. Ранее я использовал более старую версию (11.0.2
), и где-то посередине свойство StringEnumConverter.CamelCaseText
устарело.
В соответствии с классом StringEnumConverter , "StringEnumConverter.CamelCaseText is obsolete. Set StringEnumConverter.NamingStrategy with CamelCaseNamingStrategy instead."
В результате я внес следующие изменения в сценарии, в которых CamelCaseText == true
:
// Deprecated approach
new StringEnumConverter() { CamelCaseText = true };
// New approach
new StringEnumConverter() { NamingStrategy = new CamelCaseNamingStrategy() };
Хотя это кажется простым,Я не уверен, как подходить к сценариям, где CamelCaseText == false
. Я прочитал CamelCaseNamingStrategy класс , но не знаю, где бы я отключил верблюжий корпус. Я предполагаю, что мне нужно использовать класс стратегии именования, отличный от CamelCaseNamingStrategy
, такой как DefaultNamingStrategy
, но я не уверен, в чем разница в поведении этого класса.
Может кто-нибудь указать мне на документацию, объясняющую разницу, и / или помочь мне понять, какую стратегию именования использовать в этом случае?
// Deprecated approach
new StringEnumConverter() { CamelCaseText = false };
// New approach
new StringEnumConverter() { NamingStrategy = ? };