https://github.com/milandjurdjevic/discriminalizer
.NET library designed for seamless JSON deserialization of objects with complex discrimination requirements, built on top of System.Text.Json.
https://github.com/milandjurdjevic/discriminalizer
data deserialization dotnet json
Last synced: about 1 year ago
JSON representation
.NET library designed for seamless JSON deserialization of objects with complex discrimination requirements, built on top of System.Text.Json.
- Host: GitHub
- URL: https://github.com/milandjurdjevic/discriminalizer
- Owner: milandjurdjevic
- License: mit
- Archived: true
- Created: 2024-01-16T23:54:39.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-28T08:50:15.000Z (about 2 years ago)
- Last Synced: 2025-02-20T18:17:33.499Z (over 1 year ago)
- Topics: data, deserialization, dotnet, json
- Language: F#
- Homepage:
- Size: 74.2 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Discriminalizer [](https://www.nuget.org/packages/discriminalizer)
.NET library designed for seamless JSON deserialization of objects with complex discrimination requirements, built on
top
of System.Text.Json.
## Motivation
In the realm of JSON deserialization, accommodating objects with intricate discrimination requirements can be
challenging. While System.Text.Json provides robust support for basic deserialization tasks, handling complex
discrimination logic often involves writing cumbersome and error-prone custom converters.
The library simplifies this process by offering a straightforward solution for deserializing JSON data into objects with
complex discrimination needs. By extending System.Text.Json's functionality, we provide developers with a seamless way
to deserialize JSON, even when dealing with intricate discrimination requirements.
With this library, developers can efficiently map JSON data to their object models without the need for extensive custom
converter implementations. This simplifies the deserialization process, resulting in cleaner and more maintainable code.
## Features
- [Schemabased Discrimination](src/Discriminalizer/README.md#schemabased-type-discrimination): Discriminate data based on specific properties within the JSON object.
- [Schemaless Discrimination](src/Discriminalizer/README.md#schemaless-type-discrimination): Discriminate data without the need for specific properties within the JSON object.
- [Composite Discrimination](src/Discriminalizer/README.md#composite-type-discrimination): Combine multiple discriminator types into one.
## License
See [License](LICENSE) for more details.