diff --git a/docs/orleans/host/configuration-guide/serialization-configuration.md b/docs/orleans/host/configuration-guide/serialization-configuration.md index 9ae23a9e772a8..04ca7ec998877 100644 --- a/docs/orleans/host/configuration-guide/serialization-configuration.md +++ b/docs/orleans/host/configuration-guide/serialization-configuration.md @@ -48,6 +48,23 @@ siloBuilder.Services.AddSerializer(serializerBuilder => }); ``` +## Configure Orleans to use Google Protocol Buffers + +To configure Orleans to use Google Protocol Buffers (Protobuf) to serialize your types, reference the [Microsoft.Orleans.Serialization.Protobuf](https://nuget.org/packages/Microsoft.Orleans.Serialization.Protobuf) NuGet package. Then, configure the serializer, specifying which types it will be responsible for. In the following example, we specify that the Protobuf serializer is responsible for all types in the `Example.Namespace` namespace. + +- Install the [Microsoft.Orleans.Serialization.Protobuf](https://nuget.org/packages/Microsoft.Orleans.Serialization.Protobuf) NuGet package. +- Configure the serializer using the method. + +Consider the following example when interacting with the : + +```csharp +siloBuilder.Services.AddSerializer(serializerBuilder => +{ + serializerBuilder.AddProtobufSerializer( + isSupported: type => type.Namespace.StartsWith("Example.Namespace")); +}); +``` + :::zone-end diff --git a/docs/orleans/host/configuration-guide/serialization-customization.md b/docs/orleans/host/configuration-guide/serialization-customization.md index 727aa733fb769..df19d45e08a49 100644 --- a/docs/orleans/host/configuration-guide/serialization-customization.md +++ b/docs/orleans/host/configuration-guide/serialization-customization.md @@ -16,10 +16,11 @@ One important aspect of Orleans is its support for customization of serializatio :::zone target="docs" pivot="orleans-7-0" -Orleans provides two serializer implementations: +Orleans provides three serializer implementations: - [Microsoft.Orleans.Serialization.SystemTextJson](https://nuget.org/packages/Microsoft.Orleans.Serialization.SystemTextJson) - [Microsoft.Orleans.Serialization.NewtonsoftJson](https://nuget.org/packages/Microsoft.Orleans.Serialization.NewtonsoftJson) +- [Microsoft.Orleans.Serialization.Protobuf](https://nuget.org/packages/Microsoft.Orleans.Serialization.Protobuf) To configure either of these packages, see [Serialization configuration in Orleans](serialization-configuration.md?pivots=orleans-7-0).