示例#1
0
        public AuditQuery(IQueryable <AuditEntity> baseQuery, ICriteriaBuilder <AuditEntity> criteriaBuilder)
        {
            this.criteriaBuilder = criteriaBuilder ?? throw new ArgumentNullException(nameof(criteriaBuilder));

            // Transforms inputs into upper case to
            criteriaBuilder
            .AddStringTransform(nameof(AuditEntity.NormalisedAction), i => i.ToUpperInvariant())
            .AddStringTransform(nameof(AuditEntity.NormalisedSubject), i => i.ToUpperInvariant())
            .AddStringTransform(nameof(AuditEntity.NormalisedResource), i => i.ToUpperInvariant())
            .AddStringTransform(nameof(AuditEntity.NormalisedSource), i => i.ToUpperInvariant());

            Query = baseQuery ?? throw new ArgumentNullException(nameof(baseQuery));
        }