# KeyValuePairCodec&lt;TKey, TValue&gt;

Package: [Microsoft.Orleans.Serialization](/orleans/docs/api/csharp/microsoft.orleans.serialization/) 10.0.0

[NuGet package](https://www.nuget.org/packages/Microsoft.Orleans.Serialization) | [Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Codecs/KeyValuePairCodec.cs#L18)

```csharp
public sealed class KeyValuePairCodec<TKey, TValue> : IFieldCodec, IFieldCodec<KeyValuePair<TKey, TValue>>
```

Serializer for `System.Collections.Generic.KeyValuePair-2`.

## Type parameters

- `TKey`: The key type.
- `TValue`: The value type.

## Constructors

- [KeyValuePairCodec&lt;TKey, TValue&gt;(IFieldCodec&lt;TKey&gt;, IFieldCodec&lt;TValue&gt;)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.keyvaluepaircodec-2/constructors/constructor-orleans-serialization-codecs-ifieldcodec-tkey-orleans-serialization-33342f5d/)

## Methods

- [ReadValue(Reader&lt;TInput&gt;, Field)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.keyvaluepaircodec-2/methods/readvalue-1-ref-orleans-serialization-buffers-reader-tinput-orleans-serializatio-a2e41621/)
- [WriteField(Writer&lt;TBufferWriter&gt;, uint, Type, KeyValuePair&lt;TKey, TValue&gt;)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.keyvaluepaircodec-2/methods/writefield-1-ref-orleans-serialization-buffers-writer-tbufferwriter-uint-system-8cd1c5fd/)
