# TransactionalState&lt;TState&gt;.PerformRead(Func&lt;TState, TResult&gt;)

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

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Transactions/State/TransactionalState.cs#L59-L107)

```csharp
public Task<TResult> PerformRead<TResult>(Func<TState, TResult> operation)
```

Read the current state.

### Parameters

- `operation` (`Func<TState, TResult>`)
