예제 #1
0
        public async Task DeleteByGuidAsync(Guid guid)
        {
            using (var unitOfWork = _unitOfWorkFactory.StartUnitOfWork())
            {
                await _accountService.DeleteByGuidAsync(guid);

                unitOfWork.Save();
            }
        }
예제 #2
0
        public async Task <string> Get()
        {
            try
            {
                using (_unitOfWorkFactory.StartUnitOfWork())
                {
                    var allUsers = await _userRepository.GetAsync();

                    return(JsonConvert.SerializeObject(allUsers));
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }
예제 #3
0
 public IEnumerable <TAppModel> LoadAll()
 {
     using (_unitOfWorkFactory.StartUnitOfWork())
         return(Mapper.Map <
                    IEnumerable <TDomainEntity>,
                    IEnumerable <TAppModel> >(
                    _service.LoadAll()));
 }
예제 #4
0
        public LoanViewModel Create(LoanViewModel viewModel)
        {
            Loan createdLoan;

            using (var unitOfWork = _unitOfWorkFactory
                                    .StartUnitOfWork(true))
            {
                try
                {
                    createdLoan = _mapper.Map <Loan>(viewModel);

                    createdLoan.Friend = _findableFriend
                                         .FindById(createdLoan.FriendId);

                    createdLoan.BorrowedGame = _gameService
                                               .FindById(createdLoan.GameId);

                    createdLoan = _loanService
                                  .Create(createdLoan);

                    if (createdLoan == null)
                    {
                        unitOfWork.Rollback();
                        return(null);
                    }

                    unitOfWork.Save();
                    unitOfWork.Commit();
                }
                catch (Exception e)
                {
                    unitOfWork.Rollback();
                    return(null);
                }
            }

            return(_mapper.Map <LoanViewModel>(createdLoan));
        }
예제 #5
0
 public IEnumerable <GameViewModel> GetAllAvailableForLoan()
 {
     using (_unitOfWorkFactory.StartUnitOfWork())
         return(_mapper.Map <IEnumerable <GameViewModel> >(
                    _gameService.LoadAvailableForLoan()));
 }
예제 #6
0
 public TAppModel FindById(string id)
 {
     using (_unitOfWorkFactory.StartUnitOfWork())
         return(ConvertToViewModel(
                    _service.FindById(id)));
 }