# Orleans3CompatibleStorageHashPicker Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.persistence.adonet/orleans.storage.orleans3compatiblestoragehashpicker/)

## PickHasher(string, string, string, GrainId, IGrainState&lt;T&gt;, string) {#pickhasher-1-string-string-string-orleans-runtime-grainid-orleans-igrainstate-t-6d20fe4d}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.persistence.adonet/orleans.storage.orleans3compatiblestoragehashpicker/methods/pickhasher-1-string-string-string-orleans-runtime-grainid-orleans-igrainstate-t-6d20fe4d/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/AdoNet/Orleans.Persistence.AdoNet/Storage/Provider/Orleans3CompatibleStorageHashPicker.cs#L40-L44)

```csharp
public IHasher PickHasher<T>(string serviceId, string storageProviderInstanceName, string grainType, GrainId grainId, IGrainState<T> grainState, string tag = null)
```

[IStorageHasherPicker](/orleans/docs/api/csharp/microsoft.orleans.persistence.adonet/orleans.storage.istoragehasherpicker/).

### Parameters

- `serviceId` (`string`)
- `storageProviderInstanceName` (`string`)
- `grainType` (`string`)
- `grainId` (`GrainId`)
- `grainState` (`IGrainState<T>`)
- `tag` (`string`)
