# AzureBlobGrainStorage Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.persistence.azurestorage/orleans.storage.azureblobgrainstorage/)

## ClearStateAsync(string, GrainId, IGrainState&lt;T&gt;) {#clearstateasync-1-string-orleans-runtime-grainid-orleans-igrainstate-t-8482d557}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.persistence.azurestorage/orleans.storage.azureblobgrainstorage/methods/clearstateasync-1-string-orleans-runtime-grainid-orleans-igrainstate-t-8482d557/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Azure/Orleans.Persistence.AzureStorage/Providers/Storage/AzureBlobStorage.cs#L134-L177)

```csharp
public Task ClearStateAsync<T>(string grainType, GrainId grainId, IGrainState<T> grainState)
```

Clear / Delete state data function for this storage provider.

### Parameters

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

## Participate(ISiloLifecycle) {#participate-orleans-runtime-isilolifecycle-877a0ef9}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.persistence.azurestorage/orleans.storage.azureblobgrainstorage/methods/participate-orleans-runtime-isilolifecycle-877a0ef9/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Azure/Orleans.Persistence.AzureStorage/Providers/Storage/AzureBlobStorage.cs#L336-L337)

```csharp
public void Participate(ISiloLifecycle lifecycle)
```

Adds the provided observer as a participant in the lifecycle.

### Parameters

- `lifecycle` (`ISiloLifecycle`): The observer.

## ReadStateAsync(string, GrainId, IGrainState&lt;T&gt;) {#readstateasync-1-string-orleans-runtime-grainid-orleans-igrainstate-t-62907016}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.persistence.azurestorage/orleans.storage.azureblobgrainstorage/methods/readstateasync-1-string-orleans-runtime-grainid-orleans-igrainstate-t-62907016/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Azure/Orleans.Persistence.AzureStorage/Providers/Storage/AzureBlobStorage.cs#L51-L86)

```csharp
public Task ReadStateAsync<T>(string grainType, GrainId grainId, IGrainState<T> grainState)
```

Read state data function for this storage provider.

### Parameters

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

## WriteStateAsync(string, GrainId, IGrainState&lt;T&gt;) {#writestateasync-1-string-orleans-runtime-grainid-orleans-igrainstate-t-909b97a1}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.persistence.azurestorage/orleans.storage.azureblobgrainstorage/methods/writestateasync-1-string-orleans-runtime-grainid-orleans-igrainstate-t-909b97a1/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Azure/Orleans.Persistence.AzureStorage/Providers/Storage/AzureBlobStorage.cs#L101-L128)

```csharp
public Task WriteStateAsync<T>(string grainType, GrainId grainId, IGrainState<T> grainState)
```

Write state data function for this storage provider.

### Parameters

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