# VersionCodec Methods

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

## ConvertFromSurrogate(VersionSurrogate) {#convertfromsurrogate-ref-orleans-serialization-codecs-versionsurrogate-2b6938b9}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.versioncodec/methods/convertfromsurrogate-ref-orleans-serialization-codecs-versionsurrogate-2b6938b9/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Codecs/VersionCodec.cs#L23-L38)

```csharp
public override Version ConvertFromSurrogate(ref VersionSurrogate surrogate)
```

Converts a value from the surrogate type to the field type.

### Parameters

- `surrogate` (`VersionSurrogate`): The surrogate.

### Returns

The value.

## ConvertToSurrogate(Version, VersionSurrogate) {#converttosurrogate-system-version-ref-orleans-serialization-codecs-versionsurrog-b434779f}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.codecs.versioncodec/methods/converttosurrogate-system-version-ref-orleans-serialization-codecs-versionsurrog-b434779f/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization/Codecs/VersionCodec.cs#L45-L49)

```csharp
public override void ConvertToSurrogate(Version value, ref VersionSurrogate surrogate)
```

Converts a value to the surrogate type.

### Parameters

- `value` (`Version`): The value.
- `surrogate` (`VersionSurrogate`): The surrogate.
