# ReferenceCodec

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/ReferenceCodec.cs#L14)

```csharp
public static class ReferenceCodec
```

Functionality for reading and writing object references.

## Methods

- [CreateRecordPlaceholder(SerializerSession)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.referencecodec/methods/createrecordplaceholder-orleans-serialization-session-serializersession-3327b86e/)
- [MarkValueField(SerializerSession)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.referencecodec/methods/markvaluefield-orleans-serialization-session-serializersession-ae21851a/)
- [ReadReference(Reader&lt;TInput&gt;, Field)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.referencecodec/methods/readreference-2-ref-orleans-serialization-buffers-reader-tinput-orleans-serializ-de1c2fbc/)
- [ReadReference(Reader&lt;TInput&gt;, Type)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.referencecodec/methods/readreference-1-ref-orleans-serialization-buffers-reader-tinput-system-type-c8d66c55/)
- [RecordObject(SerializerSession, object)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.referencecodec/methods/recordobject-orleans-serialization-session-serializersession-object-c7f6f160/)
- [RecordObject(SerializerSession, object, uint)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.referencecodec/methods/recordobject-orleans-serialization-session-serializersession-object-uint-0de643ec/)
- [TryWriteReferenceField(Writer&lt;TBufferWriter&gt;, uint, Type, Type, object)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.referencecodec/methods/trywritereferencefield-1-ref-orleans-serialization-buffers-writer-tbufferwriter-2bd8395d/)
- [TryWriteReferenceField(Writer&lt;TBufferWriter&gt;, uint, Type, object)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.referencecodec/methods/trywritereferencefield-1-ref-orleans-serialization-buffers-writer-tbufferwriter-253740c3/)
- [WriteNullReference(Writer&lt;TBufferWriter&gt;, uint)](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.referencecodec/methods/writenullreference-1-ref-orleans-serialization-buffers-writer-tbufferwriter-uint-cae70e37/)
