internal override void GetObjectData(InternalTransaction tx, SerializationInfo serializationInfo, StreamingContext context)
{
// This is not allowed if the transaction's PromoterType is not MSDTC.
tx.ThrowIfPromoterTypeIsNotMSDTC();
// Promote the transaction.
tx._promoteState.EnterState(tx);
// Forward this call
tx.State.GetObjectData(tx, serializationInfo, context);
// Restart the commit process.
tx.State.RestartCommitIfNeeded(tx);
}