public IAuditQuery TraverseRelation(string associationName, JoinType joinType)
        {
            AuditAssociationQuery result;

            if (!_associationQueryMap.TryGetValue(associationName, out result))
            {
                result = new AuditAssociationQuery(_auditConfiguration, _auditReader, this, _queryBuilder, _entityName, associationName, _joinType, _alias);
                _associationQueries.Add(result);
                _associationQueryMap[associationName] = result;
            }
            return(result);
        }
        public virtual IAuditQuery TraverseRelation(string associationName, JoinType joinType)
        {
            AuditAssociationQuery result;

            if (!associationQueryMap.TryGetValue(associationName, out result))
            {
                result = new AuditAssociationQuery(VerCfg, VersionsReader, this, QueryBuilder, EntityName, associationName, joinType, QueryConstants.ReferencedEntityAlias);
                AssociationQueries.Add(result);
                associationQueryMap[associationName] = result;
            }
            return(result);
        }