public TransactionHistory(IStepHistoryDataConnector dataConnector, ITransaction transaction, IList <IStepHistory> historyRecords)
        {
            this.DataConnector = dataConnector ?? throw new ArgumentNullException("dataConnector");
            this.Transaction   = transaction ?? throw new ArgumentNullException("transaction");


            if (historyRecords is null)
            {
                throw new ArgumentNullException("historyRecords");
            }

            this.Records = new List <StepHistory>();

            foreach (var record in historyRecords)
            {
                this.Records.Add(new StepHistory(record));
            }
        }
 public TransactionHistoryFactory(IStepHistoryDataConnector dataConnector)
 {
     this.DataConnector = dataConnector ?? throw new ArgumentNullException("dataConnector");
 }