JsonSubTypes
Bond
JsonSubTypes | Bond | |
---|---|---|
4 | 3 | |
398 | 2,581 | |
- | 0.4% | |
3.8 | 0.0 | |
about 2 months ago | about 1 month ago | |
C# | C++ | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
JsonSubTypes
- .Net 6 - Rest Api is deserializing property of "object" type to JsonElement type (System.Text.Json)
-
An API receives different message types
If messages are arriving as Json you can use JsonSubTypes to deserialize to different DTOs based on the UUIDs (https://github.com/manuc66/JsonSubTypes) and then use the visitor pattern to dispatch the DTOs to the correct method.
-
What is your preferred way of creating application specific files for a local application?
Personally I've had good success with JsonSubTypes for deserializing discriminated unions from JSON. It'll serialize stuff into the right type, and then you just need a switch statement to typecast it afterwards.
-
How to create a data-driven software product that indicates pre-coded functionality?
There is a small use case that I consider valid for this. It would be for determining a set of pre-defined behaviors to make available to definitions of entities in a game. And the json data would not be coming from external sources, it would be tightly controlled by me as the developer. The response you made to the other comment on my post shared a link that said the practice shouldn't be done with untrusted data, and there would be no untrusted data since there'd be no external data. The article also mentions to restrict the types that can be deserialized, and that is definitely possible. The architecture pattern for this is ECS (Entity Component System) and the data-drive portion might have been a mis-naming of my post, it's more of a lot of the design of entities and components is stored in data files, and there are a few cases where I will want to associate certain functionality in the code with these data entity definitions. No operating system level functionality would be exposed. I've even been referred to a library available via nuget that will allow for what I'm attempting to do: https://github.com/manuc66/JsonSubTypes
Bond
- LinkedIn Adopts Protocol Buffers and Reduces Latency Up to 60%
-
11 Companies That Use Haskell in Production
Microsoft uses Haskell in Bond, a cross-platform framework for working with schematized data.
What are some alternatives?
Json.NET - Json.NET is a popular high-performance JSON framework for .NET
Protobuf - Protocol Buffers - Google's data interchange format
MessagePack for C# (.NET, .NET Core, Unity, Xamarin) - Extremely Fast MessagePack Serializer for C#(.NET, .NET Core, Unity, Xamarin). / msgpack.org[C#]
ProtoBuf - C# code generator for reading and writing the protocol buffers format
JsonKnownTypes - Simple way to serialize and deserialize polymorphic types for Json.NET
FlatBuffers - FlatBuffers: Memory Efficient Serialization Library
Utf8Json - Definitely Fastest and Zero Allocation JSON Serializer for C#(NET, .NET Core, Unity, Xamarin).
Wire - Binary serializer for POCO objects
MessagePack - MessagePack implementation for C and C++ / msgpack.org[C/C++]
Protobuf.NET - Protocol Buffers library for idiomatic .NET