# ValueTupleCopier&lt;T1, T2&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/ValueTupleCodec.cs#L225)

```csharp
public sealed class ValueTupleCopier<T1, T2> : IDeepCopier, IDeepCopier<(T1, T2)>, IOptionalDeepCopier
```

Copier for `System.ValueTuple-2`

## Type parameters

- `T1`: The type of the tuple's first component.
- `T2`: The type of the tuple's second component.

## Constructors

- [ValueTupleCopier&lt;T1, T2&gt;(IDeepCopier&lt;T1&gt;, IDeepCopier&lt;T2&gt;)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.valuetuplecopier-2/constructors/constructor-orleans-serialization-cloning-ideepcopier-t1-orleans-serialization-c-f013ff10/)

## Methods

- [DeepCopy((T1, T2), CopyContext)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.valuetuplecopier-2/methods/deepcopy-t1-t2-orleans-serialization-cloning-copycontext-027dc667/)
- [IsShallowCopyable](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.valuetuplecopier-2/methods/isshallowcopyable-9daef102/)
