# DoubleStateTransactionalGrain Constructors

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.transactions.testkit.base/orleans.transactions.testkit.doublestatetransactionalgrain/)

## DoubleStateTransactionalGrain(ITransactionalState&lt;GrainData&gt;, ITransactionalState&lt;GrainData&gt;, ILoggerFactory) {#constructor-orleans-transactions-abstractions-itransactionalstate-orleans-transa-bf5f0e95}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.transactions.testkit.base/orleans.transactions.testkit.doublestatetransactionalgrain/constructors/constructor-orleans-transactions-abstractions-itransactionalstate-orleans-transa-bf5f0e95/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Transactions.TestKit.Base/Grains/MultiStateTransactionalGrain.cs#L40-L42)

```csharp
public DoubleStateTransactionalGrain(ITransactionalState<GrainData> data1, ITransactionalState<GrainData> data2, ILoggerFactory loggerFactory)
```

### Parameters

- `data1` (`ITransactionalState<GrainData>`)
- `data2` (`ITransactionalState<GrainData>`)
- `loggerFactory` (`ILoggerFactory`)
