public async Task <byte[]> ExportExcel(GetAuditLogDto input)
        {
            var list = await AuditLogRepository.GetListAsync(
                sorting : input.Sorting,
                maxResultCount : input.MaxResultCount,
                skipCount : input.SkipCount,
                startTime : input.StartTime,
                endTime : input.EndTime,
                httpMethod : input.HttpMethod,
                url : input.Url,
                userName : input.UserName,
                applicationName : input.ApplicationName,
                correlationId : input.CorrelationId,
                maxExecutionDuration : input.MaxExecutionDuration,
                minExecutionDuration : input.MinExecutionDuration,
                hasException : input.HasException,
                httpStatusCode : input.HttpStatusCode,
                includeDetails : input.IncludeDetails
                );

            var       entityDtos = ObjectMapper.Map <List <AuditLog>, List <AuditLogExportDto> >(list);
            IExporter exporter   = new ExcelExporter();
            var       content    = await exporter.ExportAsByteArray(entityDtos);

            return(content);
        }
        public virtual async Task <PagedResultDto <AuditLogDto> > GetListAsync(GetAuditLogDto input)
        {
            var count = await AuditLogRepository.GetCountAsync(
                startTime : input.StartTime,
                endTime : input.EndTime,
                httpMethod : input.HttpMethod,
                url : input.Url,
                userName : input.UserName,
                applicationName : input.ApplicationName,
                correlationId : input.CorrelationId,
                maxExecutionDuration : input.MaxExecutionDuration,
                minExecutionDuration : input.MinExecutionDuration,
                hasException : input.HasException,
                httpStatusCode : input.HttpStatusCode
                );

            var list = await AuditLogRepository.GetListAsync(
                sorting : input.Sorting,
                maxResultCount : input.MaxResultCount,
                skipCount : input.SkipCount,
                startTime : input.StartTime,
                endTime : input.EndTime,
                httpMethod : input.HttpMethod,
                url : input.Url,
                userName : input.UserName,
                applicationName : input.ApplicationName,
                correlationId : input.CorrelationId,
                maxExecutionDuration : input.MaxExecutionDuration,
                minExecutionDuration : input.MinExecutionDuration,
                hasException : input.HasException,
                httpStatusCode : input.HttpStatusCode,
                includeDetails : input.IncludeDetails
                );

            return(new PagedResultDto <AuditLogDto>(
                       count,
                       ObjectMapper.Map <List <AuditLog>, List <AuditLogDto> >(list)
                       ));
        }