# GrainReferenceShared Properties

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreferenceshared/)

## CodecProvider {#codecprovider-1a8d20c1}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreferenceshared/properties/codecprovider-1a8d20c1/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L66)

```csharp
public CodecProvider CodecProvider
```

Gets the serialization codec provider.

## CopyContextPool {#copycontextpool-1d84c987}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreferenceshared/properties/copycontextpool-1d84c987/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L71)

```csharp
public CopyContextPool CopyContextPool
```

Gets the serialization copy context pool.

## GrainType {#graintype-b98adff1}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreferenceshared/properties/graintype-b98adff1/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L51)

```csharp
public GrainType GrainType
```

Gets the grain type.

## InterfaceType {#interfacetype-cb87607e}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreferenceshared/properties/interfacetype-cb87607e/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L56)

```csharp
public GrainInterfaceType InterfaceType
```

Gets the interface type.

## InterfaceVersion {#interfaceversion-0d98a27b}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreferenceshared/properties/interfaceversion-0d98a27b/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L81)

```csharp
public ushort InterfaceVersion
```

Gets the interface version.

## InvokeMethodOptions {#invokemethodoptions-0fdd5a61}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreferenceshared/properties/invokemethodoptions-0fdd5a61/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L61)

```csharp
public InvokeMethodOptions InvokeMethodOptions
```

Gets the common invocation options.

## Runtime {#runtime-4c663f54}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreferenceshared/properties/runtime-4c663f54/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L46)

```csharp
public IGrainReferenceRuntime Runtime
```

Gets the grain reference runtime.

## ServiceProvider {#serviceprovider-a0806594}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.core.abstractions/orleans.runtime.grainreferenceshared/properties/serviceprovider-a0806594/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Core.Abstractions/Runtime/GrainReference.cs#L76)

```csharp
public IServiceProvider ServiceProvider
```

Gets the service provider.
