Microsoft.Orleans.Serialization.SystemTextJson
9.2.1
Prefix Reserved
dotnet add package Microsoft.Orleans.Serialization.SystemTextJson --version 9.2.1
NuGet\Install-Package Microsoft.Orleans.Serialization.SystemTextJson -Version 9.2.1
<PackageReference Include="Microsoft.Orleans.Serialization.SystemTextJson" Version="9.2.1" />
<PackageVersion Include="Microsoft.Orleans.Serialization.SystemTextJson" Version="9.2.1" />
<PackageReference Include="Microsoft.Orleans.Serialization.SystemTextJson" />
paket add Microsoft.Orleans.Serialization.SystemTextJson --version 9.2.1
#r "nuget: Microsoft.Orleans.Serialization.SystemTextJson, 9.2.1"
#:package Microsoft.Orleans.Serialization.SystemTextJson@9.2.1
#addin nuget:?package=Microsoft.Orleans.Serialization.SystemTextJson&version=9.2.1
#tool nuget:?package=Microsoft.Orleans.Serialization.SystemTextJson&version=9.2.1
Microsoft Orleans Serialization for System.Text.Json
Introduction
Microsoft Orleans Serialization for System.Text.Json provides JSON serialization support for Microsoft Orleans using the modern System.Text.Json library. This allows you to use the high-performance JSON serialization capabilities from the .NET runtime within your Orleans application.
Getting Started
To use this package, install it via NuGet:
dotnet add package Microsoft.Orleans.Serialization.SystemTextJson
Example - Configuring System.Text.Json Serialization
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using Orleans.Hosting;
using Orleans.Serialization;
var builder = Host.CreateApplicationBuilder(args)
.UseOrleans(siloBuilder =>
{
siloBuilder
.UseLocalhostClustering()
// Configure System.Text.Json as a serializer
.AddSerializer(serializerBuilder => serializerBuilder.AddSystemTextJsonSerializer(type => type.Namespace.StartsWith("ExampleGrains")));
});
// Run the host
await builder.RunAsync();
Example - Using System.Text.Json with a Custom Type
using Orleans;
using System.Text.Json.Serialization;
namespace ExampleGrains;
// Define a class with System.Text.Json attributes
public class MyJsonClass
{
[JsonPropertyName("full_name")]
public string Name { get; set; }
[JsonPropertyName("age")]
public int Age { get; set; }
[JsonPropertyName("tags")]
public List<string> Tags { get; set; }
[JsonIgnore]
public string SecretData { get; set; }
}
// You can use it directly in your grain interfaces and implementation
public interface IMyGrain : IGrainWithStringKey
{
Task<MyJsonClass> GetData();
Task SetData(MyJsonClass data);
}
public class MyGrain : Grain, IMyGrain
{
private MyJsonClass _data;
public Task<MyJsonClass> GetData()
{
return Task.FromResult(_data);
}
public Task SetData(MyJsonClass data)
{
_data = data;
return Task.CompletedTask;
}
}
Documentation
For more comprehensive documentation, please refer to:
Feedback & Contributing
- If you have any issues or would like to provide feedback, please open an issue on GitHub
- Join our community on Discord
- Follow the @msftorleans Twitter account for Orleans announcements
- Contributions are welcome! Please review our contribution guidelines
- This project is licensed under the MIT license
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 is compatible. 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | 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.1
- Microsoft.CodeAnalysis.Analyzers (>= 3.11.0)
- Microsoft.CodeAnalysis.Common (>= 4.5.0)
- Microsoft.CodeAnalysis.Workspaces.Common (>= 4.5.0)
- Microsoft.DotNet.PlatformAbstractions (>= 3.1.6)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.2)
- Microsoft.Extensions.DependencyModel (>= 8.0.2)
- Microsoft.Extensions.ObjectPool (>= 8.0.11)
- Microsoft.Extensions.Options (>= 8.0.2)
- Microsoft.Orleans.Analyzers (>= 9.2.1)
- Microsoft.Orleans.CodeGenerator (>= 9.2.1)
- Microsoft.Orleans.Serialization (>= 9.2.1)
- System.Collections.Immutable (>= 8.0.0)
- System.IO.Hashing (>= 8.0.0)
- System.IO.Pipelines (>= 8.0.0)
- System.Text.Json (>= 8.0.5)
-
net8.0
- Microsoft.CodeAnalysis.Analyzers (>= 3.11.0)
- Microsoft.CodeAnalysis.Common (>= 4.5.0)
- Microsoft.CodeAnalysis.Workspaces.Common (>= 4.5.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.2)
- Microsoft.Extensions.DependencyModel (>= 8.0.2)
- Microsoft.Extensions.ObjectPool (>= 8.0.11)
- Microsoft.Extensions.Options (>= 8.0.2)
- Microsoft.Orleans.Analyzers (>= 9.2.1)
- Microsoft.Orleans.CodeGenerator (>= 9.2.1)
- Microsoft.Orleans.Serialization (>= 9.2.1)
- System.Collections.Immutable (>= 8.0.0)
- System.IO.Hashing (>= 8.0.0)
- System.IO.Pipelines (>= 8.0.0)
NuGet packages (9)
Showing the top 5 NuGet packages that depend on Microsoft.Orleans.Serialization.SystemTextJson:
Package | Downloads |
---|---|
Aksio.Cratis.Kernel.Orleans
Package Description |
|
Cratis.Chronicle.Setup
Package Description |
|
Cszy.Orleans
Package Description |
|
UFX.Orleans.SignalRBackplane
Orleans backplane for SignalR |
|
BusAppCore.CommandQuery
BusAppCore CQRS support library |
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Microsoft.Orleans.Serialization.SystemTextJson:
Repository | Stars |
---|---|
Dotnet-Boxed/Templates
.NET project templates with batteries included, providing the minimum amount of code required to get you going faster.
|
Version | Downloads | Last Updated |
---|---|---|
9.2.1 | 2 | 7/16/2025 |
9.2.0 | 380 | 7/14/2025 |
9.2.0-preview3 | 509 | 6/10/2025 |
9.2.0-preview2 | 201 | 6/4/2025 |
9.2.0-preview1 | 5,569 | 4/4/2025 |
9.1.2 | 125,999 | 2/13/2025 |
9.0.1 | 68,611 | 11/23/2024 |
9.0.0 | 5,788 | 11/14/2024 |
8.2.0 | 177,047 | 7/12/2024 |
8.2.0-preview1 | 222 | 5/22/2024 |
8.1.0 | 142,657 | 4/17/2024 |
8.1.0-preview3 | 221 | 3/11/2024 |
8.1.0-preview2 | 342 | 2/23/2024 |
8.1.0-preview1 | 147 | 2/13/2024 |
8.0.0 | 68,815 | 1/5/2024 |
8.0.0-rc2 | 512 | 12/20/2023 |
8.0.0-rc1 | 382 | 12/4/2023 |
7.2.7 | 3,669 | 10/15/2024 |
7.2.6 | 34,114 | 3/9/2024 |
7.2.5 | 1,425 | 2/22/2024 |
7.2.4 | 39,256 | 12/2/2023 |
7.2.3 | 15,849 | 11/3/2023 |
7.2.2 | 44,617 | 10/16/2023 |
7.2.1 | 224,668 | 7/11/2023 |
7.2.0 | 844 | 7/7/2023 |
7.1.2 | 39,948 | 4/19/2023 |
7.1.1 | 7,751 | 3/23/2023 |
7.1.0 | 40,322 | 2/1/2023 |
7.0.0 | 10,528 | 11/8/2022 |
7.0.0-rc2 | 249 | 10/19/2022 |
4.0.0-preview2 | 331 | 8/4/2022 |