protected ListQueryResult <TDto> RunListQuery <TQuery, TDto>(IListQueryRepository <TQuery, TDto> repository, TQuery query) where TQuery : Query where TDto : Dto { IEnumerable <TDto> queryRes; try { queryRes = repository.Handle(query); } catch (Exception ex) { Logger.Error(ex, $"Unhandled exception: {ex.Message}"); return(new ListQueryResult <TDto>(query, null, false).Fatal($"Unhandled exception: {ex.Message}", ex)); } return(queryRes == null ? new ListQueryResult <TDto>(query, Enumerable.Empty <TDto>()).Warning("Query return nothing") : new ListQueryResult <TDto>(query, queryRes)); }
public StateQueryHandler(IListQueryRepository listQueryRepository) { _listQueryRepository = listQueryRepository; }