Programmatic control
Inject TransactionHost for imperative control without the decorator:
import { TransactionalAdapterTypeOrm, TransactionHost } from '@nestjs-transactions/typeorm';
constructor(private readonly txHost: TransactionHost<TransactionalAdapterTypeOrm>) {}
await this.txHost.withTransaction(async () => {
/* ... */
});
this.txHost.isTransactionActive();
this.txHost.tx; // the current EntityManager
For a named connection inject with @InjectTransactionHost('stats').