https://github.com/aimenux/jsonstringenumconverterdemo
Using various ways to support serialization/deserialization and model binding of enums in web api
https://github.com/aimenux/jsonstringenumconverterdemo
enum-member enums from-query net80 system-text-json webapi
Last synced: 3 days ago
JSON representation
Using various ways to support serialization/deserialization and model binding of enums in web api
- Host: GitHub
- URL: https://github.com/aimenux/jsonstringenumconverterdemo
- Owner: aimenux
- License: mit
- Created: 2022-04-01T23:52:46.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2025-06-03T21:30:33.000Z (about 1 year ago)
- Last Synced: 2025-11-22T04:03:46.876Z (7 months ago)
- Topics: enum-member, enums, from-query, net80, system-text-json, webapi
- Language: C#
- Homepage:
- Size: 43 KB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/aimenux/JsonStringEnumConverterDemo/actions/workflows/ci.yml)
# JsonStringEnumConverterDemo
```
Using various ways to support serialization/deserialization and model binding of enums in web api
```
In this demo, i m using various ways in order to support serialization/deserialization and model binding of enums (with or without [EnumMemberAttribute](https://docs.microsoft.com/en-us/dotnet/api/system.runtime.serialization.enummemberattribute)) in web api using [System.Text.Json](https://docs.microsoft.com/en-us/dotnet/api/system.text.json) :
>
:one: `Example01` : Use locally `JsonStringEnumConverter` to support serialization/deserialization and model binding of enums (without `EnumMemberAttribute`)
>
:two: `Example02` : Use globally `JsonStringEnumConverter` to support serialization/deserialization and model binding of enums (without `EnumMemberAttribute`)
>
:three: `Example03` : Use locally custom json converter to support serialization/deserialization and custom type converter to support model binding of enums (with `EnumMemberAttribute`)
>
:four: `Example04` : Use locally custom json converter (another implementation) to support serialization/deserialization and custom type converter to support model binding of enums (with `EnumMemberAttribute`)
>
:five: `Example05` : Use globally custom json converter to support serialization/deserialization and custom type converter to support model binding of enums (with `EnumMemberAttribute`)
**`Tools`** : net 8.0, xunit, fluent-assertions