# ByteCodec Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.bytecodec/)

## ReadValue(Reader&lt;TInput&gt;, Field) {#readvalue-1-ref-orleans-serialization-buffers-reader-tinput-orleans-serializatio-8c335243}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.bytecodec/methods/readvalue-1-ref-orleans-serialization-buffers-reader-tinput-orleans-serializatio-8c335243/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Codecs/IntegerCodec.cs#L157-L158)

```csharp
public static byte ReadValue<TInput>(ref Reader<TInput> reader, Field field)
```

Reads a value.

### Parameters

- `reader` (`Reader<TInput>`): The reader.
- `field` (`Field`): The field.

### Returns

The value.

## WriteField(Writer&lt;TBufferWriter&gt;, uint, Type, byte, Type) {#writefield-1-ref-orleans-serialization-buffers-writer-tbufferwriter-uint-system-11173039}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.bytecodec/methods/writefield-1-ref-orleans-serialization-buffers-writer-tbufferwriter-uint-system-11173039/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Codecs/IntegerCodec.cs#L142)

```csharp
public static void WriteField<TBufferWriter>(ref Writer<TBufferWriter> writer, uint fieldIdDelta, Type expectedType, byte value, Type actualType)
```

Writes a field.

### Parameters

- `writer` (`Writer<TBufferWriter>`): The writer.
- `fieldIdDelta` (`uint`): The field identifier delta.
- `expectedType` (`Type`): The expected type.
- `value` (`byte`): The value.
- `actualType` (`Type`): The actual type.

## WriteField(Writer&lt;TBufferWriter&gt;, uint, byte) {#writefield-1-ref-orleans-serialization-buffers-writer-tbufferwriter-uint-byte-4789d8f9}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.bytecodec/methods/writefield-1-ref-orleans-serialization-buffers-writer-tbufferwriter-uint-byte-4789d8f9/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Codecs/IntegerCodec.cs#L127-L130)

```csharp
public static void WriteField<TBufferWriter>(ref Writer<TBufferWriter> writer, uint fieldIdDelta, byte value)
```

Writes a field without type info (expected type is statically known).

### Parameters

- `writer` (`Writer<TBufferWriter>`): The writer.
- `fieldIdDelta` (`uint`): The field identifier delta.
- `value` (`byte`): The value.
