Use the System.Text.Json package version 8.0+ instead. It fully matches the functionality of the current package.
Provides snake_case & kebab-case property name serialization.
Tiny and high-performance .NET library based on System.Text.Json.
Here is the benchmark summary:
PM> Install-Package Chubrik.Json
using Chubrik.Json;
using System.Text.Json;
var myObj = new { FirstName = "John", LastName = "Smith" };
var options = new JsonSerializerOptions { PropertyNamingPolicy = JsonNamingPolicies.SnakeLowerCase };
var json = JsonSerializer.Serialize(value: myObj, options: options);
Console.WriteLine(json); // {"first_name":"John","last_name":"Smith"}The following table shows the serialization rules for different JSON naming policies:
| Original name | SnakeLowerCase | SnakeUpperCase | KebabLowerCase | KebabUpperCase |
|---|---|---|---|---|
| PascalProp | pascal_prop | PASCAL_PROP | pascal-prop | PASCAL-PROP |
| camelProp | camel_prop | CAMEL_PROP | camel-prop | CAMEL-PROP |
| Snake_Prop | snake_prop | SNAKE_PROP | snake-prop | SNAKE-PROP |
| SEMIUpper | semi_upper | SEMI_UPPER | semi-upper | SEMI-UPPER |
| _Underlined_ | _underlined_ | _UNDERLINED_ | -underlined- | -UNDERLINED- |
| Version1 | version1 | VERSION1 | version1 | VERSION1 |
| Version2Alpha | version2_alpha | VERSION2_ALPHA | version2-alpha | VERSION2-ALPHA |
| Version3beta | version3beta | VERSION3BETA | version3beta | VERSION3BETA |
| Version4_Gamma | version4_gamma | VERSION4_GAMMA | version4-gamma | VERSION4-GAMMA |
| Hex1_0xa1b23c | hex1_0xa1b23c | HEX1_0XA1B23C | hex1-0xa1b23c | HEX1-0XA1B23C |
| ΞένοΌνομα | ξένο_όνομα | ΞΈΝΟ_ΌΝΟΜΑ | ξένο-όνομα | ΞΈΝΟ-ΌΝΟΜΑ |
The Chubrik.Json is licensed under the MIT license.
