# GrainServiceClient&lt;TGrainService&gt;

Package: [Microsoft.Orleans.Runtime](/orleans/docs/api/csharp/microsoft.orleans.runtime/) 10.0.0

[NuGet package](https://www.nuget.org/packages/Microsoft.Orleans.Runtime) | [Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Runtime/Services/GrainServiceClient.cs#L14)

```csharp
public abstract class GrainServiceClient<TGrainService> : IGrainServiceClient<TGrainService>
    where TGrainService : Orleans.Services.IGrainService
```

Proxies requests to the appropriate GrainService based on the appropriate Ring partitioning strategy.
