Universal.Common.Json
1.0.2
See the version list below for details.
dotnet add package Universal.Common.Json --version 1.0.2
NuGet\Install-Package Universal.Common.Json -Version 1.0.2
<PackageReference Include="Universal.Common.Json" Version="1.0.2" />
paket add Universal.Common.Json --version 1.0.2
#r "nuget: Universal.Common.Json, 1.0.2"
// Install Universal.Common.Json as a Cake Addin #addin nuget:?package=Universal.Common.Json&version=1.0.2 // Install Universal.Common.Json as a Cake Tool #tool nuget:?package=Universal.Common.Json&version=1.0.2
Universal.Common.Json
This package provides a JsonSchema
class that represents a JSON Schema according to the Draft 2020-12 specification. It allows you to create, serialize, and deserialize JSON Schemas in your .NET applications.
Features
- Full support for JSON Schema Draft 2020-12
- Serialization and deserialization using both Newtonsoft.Json and System.Text.Json
- Extension data support for custom keywords
Usage
Here's a basic example of how to create and serialize a JSON Schema:
using Universal.Common.Json;
using System.Text.Json;
var schema = new JsonSchema
{
Title = "Person",
Type = "object",
Properties = new Dictionary<string, JsonSchema>
{
["name"] = new JsonSchema { Type = "string" },
["age"] = new JsonSchema { Type = "integer", Minimum = 0 },
["email"] = new JsonSchema { Type = "string", Format = "email" }
},
Required = new[] { "name", "email" }
};
string jsonString = JsonSerializer.Serialize(schema);
Console.WriteLine(jsonString);
You can also deserialize a JSON string into a JsonSchema
object:
string jsonString = @"{
""$schema"": ""https://json-schema.org/draft/2020-12/schema"",
""title"": ""Person"",
""type"": ""object"",
""properties"": {
""name"": { ""type"": ""string"" },
""age"": { ""type"": ""integer"", ""minimum"": 0 },
""email"": { ""type"": ""string"", ""format"": ""email"" }
},
""required"": [""name"", ""email""]
}";
JsonSchema schema = JsonSerializer.Deserialize<JsonSchema>(jsonString);
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Newtonsoft.Json (>= 13.0.3)
- System.Text.Json (>= 8.0.4)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Universal.Common.Json:
Package | Downloads |
---|---|
Universal.OpenAI.Client
Class library for interacting with OpenAI APIs. |
|
Universal.Anthropic.Client
Class library for interacting with the Anthropic REST API. |
GitHub repositories
This package is not used by any popular GitHub repositories.
Retarget to .NET Standard 2.0.