# MemoryGrainStorage

Package: [Microsoft.Orleans.Persistence.Memory](/orleans/docs/api/csharp/microsoft.orleans.persistence.memory/) 10.0.0

[NuGet package](https://www.nuget.org/packages/Microsoft.Orleans.Persistence.Memory) | [Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Persistence.Memory/Storage/MemoryStorage.cs#L25)

```csharp
public class MemoryGrainStorage : IGrainStorage, IDisposable
```

This is a simple in-memory grain implementation of a storage provider.

## Remarks

This storage provider is ONLY intended for simple in-memory Development / Unit Test scenarios. This class should NOT be used in Production environment, because [by-design] it does not provide any resilience or long-term persistence capabilities.

## Constructors

- [MemoryGrainStorage(string, MemoryGrainStorageOptions, ILogger&lt;MemoryGrainStorage&gt;, IGrainFactory, IGrainStorageSerializer, IActivatorProvider)](/orleans/docs/api/csharp/microsoft.orleans.persistence.memory/orleans.storage.memorygrainstorage/constructors/constructor-string-orleans-configuration-memorygrainstorageoptions-microsoft-ext-aa0f6e28/)

## Methods

- [ClearStateAsync(string, GrainId, IGrainState&lt;T&gt;)](/orleans/docs/api/csharp/microsoft.orleans.persistence.memory/orleans.storage.memorygrainstorage/methods/clearstateasync-1-string-orleans-runtime-grainid-orleans-igrainstate-t-cfdcf895/)
- [Dispose](/orleans/docs/api/csharp/microsoft.orleans.persistence.memory/orleans.storage.memorygrainstorage/methods/dispose-56f87669/)
- [ReadStateAsync(string, GrainId, IGrainState&lt;T&gt;)](/orleans/docs/api/csharp/microsoft.orleans.persistence.memory/orleans.storage.memorygrainstorage/methods/readstateasync-1-string-orleans-runtime-grainid-orleans-igrainstate-t-783100b4/)
- [WriteStateAsync(string, GrainId, IGrainState&lt;T&gt;)](/orleans/docs/api/csharp/microsoft.orleans.persistence.memory/orleans.storage.memorygrainstorage/methods/writestateasync-1-string-orleans-runtime-grainid-orleans-igrainstate-t-4578b227/)
