Exemple #1
0
        /// <summary>
        /// Udfører forespørgelse.
        /// </summary>
        /// <param name="query">Forespørgelse efter alle regnskaber.</param>
        /// <returns>Alle regnskaber.</returns>
        public IEnumerable <RegnskabListeView> Query(RegnskabGetAllQuery query)
        {
            if (query == null)
            {
                throw new ArgumentNullException("query");
            }
            var adresser     = _adresseRepository.AdresseGetAll();
            var getBrevhoved = new Func <int, Brevhoved>(nummer => _fællesRepository.BrevhovedGetByNummer(nummer));
            var regnskaber   = _finansstyringRepository.RegnskabGetAll(getBrevhoved, r => MergeInformations(r, adresser));

            return(_objectMapper.Map <IEnumerable <Regnskab>, IEnumerable <RegnskabListeView> >(regnskaber));
        }
 public IEnumerable <RegnskabListeView> RegnskabGetAll(RegnskabGetAllQuery regnskabGetAllQuery)
 {
     try
     {
         return(_queryBus.Query <RegnskabGetAllQuery, IEnumerable <RegnskabListeView> >(regnskabGetAllQuery));
     }
     catch (Exception ex)
     {
         throw CreateFault(MethodBase.GetCurrentMethod(), ex,
                           int.Parse(Properties.Resources.EventLogFinansstyringRepositoryService));
     }
 }
        /// <summary>
        /// Henter en liste af regnskaber.
        /// </summary>
        /// <param name="getBrevhovedCallback">Callbackmetode til at hente et givent brevhoved.</param>
        /// <returns>Liste af regnskaber.</returns>
        public IEnumerable <Regnskab> RegnskabslisteGet(Func <int, Brevhoved> getBrevhovedCallback)
        {
            if (getBrevhovedCallback == null)
            {
                throw new ArgumentNullException("getBrevhovedCallback");
            }
            var channel = _channelFactory.CreateChannel <IFinansstyringRepositoryService>(EndpointConfigurationName);

            try
            {
                // Hent alle regnskaber.
                var regnskabQuery = new RegnskabGetAllQuery();
                var regnskabViews = channel.RegnskabGetAll(regnskabQuery);
                // Mapning af regnskaber.
                _domainObjectBuilder.GetBrevhovedCallback = getBrevhovedCallback;
                return(_domainObjectBuilder.BuildMany <RegnskabListeView, Regnskab>(regnskabViews));
            }
            catch (IntranetRepositoryException)
            {
                throw;
            }
            catch (FaultException ex)
            {
                throw new IntranetRepositoryException(ex.Message);
            }
            catch (Exception ex)
            {
                throw new IntranetRepositoryException(
                          Resource.GetExceptionMessage(ExceptionMessage.RepositoryError, MethodBase.GetCurrentMethod().Name,
                                                       ex.Message), ex);
            }
            finally
            {
                ChannelTools.CloseChannel(channel);
            }
        }