/// <summary> /// Henter og returnerer en ViewModel til et givent regnskab. /// </summary> /// <param name="regnskabsnummer">Regnskabsnummeret, hvortil ViewModel for regnskabet skal returneres.</param> /// <returns>ViewModel for det givne regnskab.</returns> public async virtual Task <IRegnskabViewModel> RegnskabGetAsync(int regnskabsnummer) { try { var regnskabViewModel = Regnskaber.FirstOrDefault(m => m.Nummer == regnskabsnummer); if (regnskabViewModel != null) { return(regnskabViewModel); } var statusDato = DateTime.Now; var regnskabModelCollection = await _finansstyringRepository.RegnskabslisteGetAsync(); var regnskabModel = regnskabModelCollection.FirstOrDefault(m => m.Nummer == regnskabsnummer); return(regnskabModel == null ? null : new RegnskabViewModel(regnskabModel, statusDato, _finansstyringRepository, _exceptionHandlerViewModel)); } catch (IntranetGuiExceptionBase ex) { _exceptionHandlerViewModel.HandleException(ex); return(null); } catch (Exception ex) { _exceptionHandlerViewModel.HandleException(new IntranetGuiSystemException(Resource.GetExceptionMessage(ExceptionMessage.MethodError, "RegnskabGetAsync", ex.Message))); return(null); } }
/// <summary> /// Håndtering af exceptions. /// </summary> /// <param name="exception">Exception, der skal håndteres.</param> private void HandleException(Exception exception) { if (exception == null) { throw new ArgumentNullException("exception"); } try { _exceptionHandlerViewModel.HandleException(exception); } catch (Exception ex) { Debug.WriteLine("HandleException: {0}", ex.Message); } }