Пример #1
0
        public IResponse GetBy(string requestId, Expression <Func <TEntity, bool> > filter, params Expression <Func <TEntity, object> >[] includes)
        {
            MethodBase m = MethodBase.GetCurrentMethod();

            _logger.LogInformation(ServiceResource.ServiceStart, m.Name, requestId);

            try
            {
                var result = new Response(requestId)
                {
                    Data = _readRepository.GetBy(requestId, filter, includes)
                };
                _logger.LogInformation(ServiceResource.ServiceEnd, m.Name, requestId);
                return(result);
            }
            catch (Exception ex)
            {
                _logger.LogError(
                    new EventId(ServiceError.DataReadServiceError.Code, ServiceError.DataReadServiceError.Error), ex,
                    _localizer[ServiceResource.ServiceError], m.Name, requestId);

                // return new FailureResponse(requestId, new[] { error });
                return(new ServiceErrorReponse(requestId)
                {
                    Message = ex.Message, ServiceErrors = new[] { ServiceError.DataReadServiceError }
                });
            }
        }