# StateStorageBridge&lt;TState&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/Storage/StateStorageBridge.cs#L21)

```csharp
public class StateStorageBridge<TState> : IStorage, IStorage<TState>, IGrainMigrationParticipant
```

Provides functionality for operating on grain state. Implements the `Orleans.Core.IStorage-1`

## Type parameters

- `TState`: The underlying state type.

## See also

- `Orleans.Core.IStorage-1`

## Constructors

- [StateStorageBridge&lt;TState&gt;(string, IGrainContext, IGrainStorage)](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.core.statestoragebridge-1/constructors/constructor-string-orleans-runtime-igraincontext-orleans-storage-igrainstorage-423daf5b/)
- [StateStorageBridge&lt;TState&gt;(string, IGrainContext, IGrainStorage, ILoggerFactory, IActivatorProvider)](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.core.statestoragebridge-1/constructors/constructor-string-orleans-runtime-igraincontext-orleans-storage-igrainstorage-m-91cc9773/)

## Properties

- [Etag](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.core.statestoragebridge-1/properties/etag-96dc5f73/)
- [RecordExists](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.core.statestoragebridge-1/properties/recordexists-5c270a09/)
- [State](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.core.statestoragebridge-1/properties/state-3eff86b6/)

## Methods

- [ClearStateAsync](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.core.statestoragebridge-1/methods/clearstateasync-55b71e62/)
- [OnDehydrate(IDehydrationContext)](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.core.statestoragebridge-1/methods/ondehydrate-orleans-runtime-idehydrationcontext-a1f2f02f/)
- [OnRehydrate(IRehydrationContext)](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.core.statestoragebridge-1/methods/onrehydrate-orleans-runtime-irehydrationcontext-f1919769/)
- [ReadStateAsync](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.core.statestoragebridge-1/methods/readstateasync-5cb26129/)
- [WriteStateAsync](/orleans/docs/api/csharp/microsoft.orleans.runtime/orleans.core.statestoragebridge-1/methods/writestateasync-cddbb7ac/)
