Json Schema Patterns in .NET - Polymorphism with discriminator properties
This post explores some common patterns that leverage C# and JSON Schema, focusing on how to use const
to generate discriminator properties for polymorphic types. With JSON Schema, we can define the expected structure and content of data exchanged between applications, enabling us to leverage a more common data format across various systems.
Polymorphism denotes the technique of allowing different underlying data types to be processed through a uniform interface. Using discriminator properties in JSON Schema, you can map between JSON and equivalent C# types to enable robust handling of polymorphic content.
This post examines in detail how to implement this pattern, providing step-by-step guidance to enable you to execute it successfully in your own projects. Regardless of your level of experience, whether you're a seasoned professional or a novice, this post offers a valuable toolkit for leveraging C# and JSON Schema to create effective, efficient solutions.
So, if you're interested in exploring how to use const
to create discriminator properties for polymorphic types in JSON Schema, you'll find ample insights in this informative and comprehensive post.
Link to the post: https://endjin.com/blog/2024/05/json-schema-patterns-dotnet-polymorphism-with-discriminator-properties.html
Published on:
Learn moreRelated posts
Safe JSON Schema Validation with .NET's JsonElement
Learn how Corvus.JsonSchema can be used to maximize the secure utilization of .NET's high-performance JSON parsing. Specifically, System.Text....
.NET JsonElement Error Handling
.NET's System.Text.Json offers very high performance JSON parsing. However, JsonElement's text parsing methods offer a trap for the unwary
How .NET 8.0 boosted JSON Schema performance by 20%
We benchmarked endjin's JSON Schema library on .NET 8.0 and saw large performance gains. There are even more gains to be had with new .NET 8 f...
How .NET 8.0 boosted JSON Schema performance by 20%
When we benchmarked endjin's JSON Schema validation library on .NET 8.0, we were delighted to see substantial performance gains, with no extra...
High Performance JSON Serialization With Code Generation on C# 11 and .NET 7.0
Looking for ways to improve the parsing and generation of JSON data in your .NET applications? This talk showcases how recent features added t...
Ian Griffiths presenting High Performance JSON Serialization with Code Generation on .NET 7.0
Ian Griffiths is presenting at at JetBrains .NET Day Online about JSON Serialization with Code Generation on .NET 7.0
Announcing dynamic JSON in the Azure Core library for .NET
The Azure Core library for .NET now includes the ability to handle dynamic JSON. The new dynamic type enables raw JSON data to be treated as a...
Ian Griffiths presenting at Visual Studio Live! 2022 @ Microsoft HQ
Ian Griffiths is presenting at Visual Studio Live! on the Microsoft Campus about .NET 6.0 Cold Start in the Cloud, Reaqtor and high performanc...
Ian Griffiths presenting at Visual Studio Live! 2022 San Diego
Ian Griffiths is presenting at Visual Studio Live! In San Diego about JSON Serialization with Code Generation on C# 10, Reaqtor, and .NET Cold...
What is a JSON Schema? Intro to JSON
If you're new to JSON, this video provides an introduction to the concept and explains the benefits of using a JSON schema. JSON, or JavaScrip...