public ActionResult BiographyProfile(int?idPerformer, int page = 1, string sort = "")
        {
            PerformerDTO performDto = PerformerServices.GetById(idPerformer);
            var          performer  = _mapper.Map <PerformerDTO, PerformerViewModel>(performDto);

            return(View(performer));
        }
 public PerformerDTO UpdatePerformer(PerformerDTO performer)
 {
     try
     {
         var p = _uow.Performers.Update(_performerFactory.Transform(performer));
         _uow.SaveChanges();
         return(_performerFactory.Transform(p));
     }
     catch (DBConcurrencyException)
     {
         return(null);
     }
 }
 public PerformerDTO AddNewPerformer(PerformerDTO newPerformer)
 {
     try
     {
         var p = _performerFactory.Transform(newPerformer);
         _uow.Performers.Add(p);
         _uow.SaveChanges();
         return(_performerFactory.Transform(_uow.Performers.Find(p.PerformerId)));
     }
     catch (DBConcurrencyException)
     {
         return(null);
     }
 }
 public Performer Transform(PerformerDTO dto)
 {
     if (dto == null)
     {
         return(null);
     }
     return(new Performer
     {
         PerformerName = dto.PerformerName,
         PerformerDescription = dto.PerformerDescription,
         PerformerPage = dto.PerformerPage,
         PerformerTypeId = dto.PerformerTypeId
     });
 }
        public ActionResult PerformerProfile(int?idPerformer, int page = 1, string sort = "")
        {
            IEnumerable <SongViewModel> songsPerPage;
            PerformerDTO performDto = PerformerServices.GetById(idPerformer);

            performDto.Songs = SongServices.Sort(sort, performDto.Songs);
            var performer = _mapper.Map <PerformerViewModel>(performDto);

            songsPerPage = performer.Songs.Skip((page - 1) * pageSize).Take(pageSize);
            PageInfo pageInfo = new PageInfo {
                PageNumber = page, PageSize = pageSize, TotalItems = performer.Songs.Count()
            };
            ListSongViewModel model = new ListSongViewModel {
                PageInfo = pageInfo, Songs = songsPerPage, Performer = performer, CurrentSort = sort
            };

            return(View(model));
        }
示例#6
0
        public ActionResult Performer(int?id, string sortOption, int pageSize = 10, int page = 1)
        {
            PerformerDTO       performerDto = performerService.Get(id);
            PerformerViewModel performer    = Mapper.Map <PerformerDTO, PerformerViewModel>(performerDto);

            if (sortOption == null)
            {
                sortOption = "default";
            }
            IEnumerable <SongDTO>       songDtos = songService.GetSongsChunkWithOrder(performer.Id, sortOption, page, pageSize);
            IEnumerable <SongViewModel> songs    = Mapper.Map <IEnumerable <SongDTO>, IEnumerable <SongViewModel> >(songDtos);
            int songsCount = songService.GetSongsCount(performer.Id);
            var pagedList  = new StaticPagedList <SongViewModel>(songs, page, pageSize, songsCount);

            ViewBag.page      = page;
            ViewBag.pageSize  = pageSize;
            ViewBag.pagedList = pagedList;
            return(Request.IsAjaxRequest()
                ? (ActionResult)PartialView("PartialSongList", pagedList)
                : View(performer));
        }