# ShallowCopier&lt;T&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/Cloning/IDeepCopier.cs#L97)

```csharp
public class ShallowCopier<T> : IDeepCopier, IDeepCopier<T>, IOptionalDeepCopier
```

Base type for deep copiers of types that are actually shallow-copyable.

## Constructors

- [ShallowCopier&lt;T&gt;](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.cloning.shallowcopier-1/constructors/constructor-c43c6ec7/)

## Methods

- [DeepCopy(T, CopyContext)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.cloning.shallowcopier-1/methods/deepcopy-t-orleans-serialization-cloning-copycontext-2c2280f5/)
- [DeepCopy(object?, CopyContext)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.cloning.shallowcopier-1/methods/deepcopy-object-nullable-orleans-serialization-cloning-copycontext-ea1bd991/)
- [IsShallowCopyable](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.cloning.shallowcopier-1/methods/isshallowcopyable-1a9bca44/)
