Exemplo n.º 1
0
 public RestClient(string baseUrl, object appContext   = null,
                   CancellationToken?cancellationToken = null,
                   JsonNameMapping nameMapping         = JsonNameMapping.Default,
                   Type badRequestContentType          = null)
     : this(new RestClientSettings(baseUrl, new JsonContentSerializer(nameMapping), badRequestContentType : badRequestContentType),
            appContext : appContext)
 {
 }
Exemplo n.º 2
0
 public JsonContentSerializer(JsonNameMapping nameMapping = JsonNameMapping.Default, JsonSerializerSettings settings = null)
 {
     if (settings == null)
     {
         settings            = new JsonSerializerSettings();
         settings.Formatting = Formatting.Indented;
         settings.Converters.Add(new Newtonsoft.Json.Converters.StringEnumConverter()); //serialize enum as names, not numbers
     }
     SerializerSettings = settings;
     if (SerializerSettings.ContractResolver == null)
     {
         SerializerSettings.ContractResolver = new JsonNameContractResolver(nameMapping); //to process NodeAttribute attribute
     }
     JsonSerializer = JsonSerializer.Create(SerializerSettings);
 }
Exemplo n.º 3
0
        public JsonNameContractResolver(JsonNameMapping nameMapping)
        {
            NameMapping = nameMapping;
            switch (nameMapping)
            {
            case JsonNameMapping.Default:
                base.NamingStrategy = new DefaultNamingStrategy();
                break;

            case JsonNameMapping.CamelCase:
                base.NamingStrategy = new CamelCaseNamingStrategy();
                break;

            case JsonNameMapping.UnderscoreAllLower:
                base.NamingStrategy = new SnakeCaseNamingStrategy();
                break;
            }
        }