//public BaseService(IDatabaseTransaction databaseTransaction, params IBaseService[] baseServices)
        //{
        //    DatabaseTransaction = databaseTransaction;
        //    foreach (var service in baseServices)
        //    {
        //        service.IsChild = true;
        //        service.IsCommitingChanges = false;
        //        var bl = service as BaseService;
        //        if (bl != null)
        //            bl.DatabaseTransaction = databaseTransaction;
        //    }
        //}

        public void EnsureTransaction()
        {
            if (DatabaseTransaction == null)
            {
                throw CreateException(nameof(DatabaseTransaction));
            }

            DatabaseTransaction.EnsureTransaction();
        }