# ITransactionalStateStorage&lt;TState&gt;.Store(string, TransactionalStateMetaData, List&lt;PendingTransactionState&lt;TState&gt;&gt;, long?, long?)

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.transactions/orleans.transactions.abstractions.itransactionalstatestorage-1/) | [Methods](/orleans/docs/api/csharp/microsoft.orleans.transactions/orleans.transactions.abstractions.itransactionalstatestorage-1/methods/)

```csharp
public abstract Task<string> Store(string expectedETag, TransactionalStateMetaData metadata, List<PendingTransactionState<TState>> statesToPrepare, long? commitUpTo, long? abortAfter)
```

### Parameters

- `expectedETag` (`string`)
- `metadata` (`TransactionalStateMetaData`)
- `statesToPrepare` (`List<PendingTransactionState<TState>>`)
- `commitUpTo` (`long?`)
- `abortAfter` (`long?`)
