private Interpret GetEventInterpret(int interpretId)
        {
            var interpret = _interpretRepository.GetById(interpretId);

            if (interpret == null)
            {
                throw new NullReferenceException("Event service - GetEventInterpret(...) interpret cant be null");
            }
            return(interpret);
        }
Exemple #2
0
        private Interpret GetAlbumInterpret(int interpretId)
        {
            var interpret = _interpretRepository.GetById(interpretId);

            if (interpret == null)
            {
                throw new NullReferenceException("Album service - CreateAlbum(...) interpret cant be null");
            }
            return(interpret);
        }
Exemple #3
0
        public void EditInterpret(InterpretDTO interpretDto, int[] albumIds, int[] eventIds)
        {
            using (var uow = UnitOfWorkProvider.Create())
            {
                var interpret = _interpretRepository.GetById(interpretDto.ID);
                Mapper.Map(interpretDto, interpret);

                if (albumIds != null)
                {
                    if (albumIds.Length != 0)
                    {
                        var albums = _albumRepository.GetByIds(albumIds);
                        interpret.Albums.RemoveAll(album => !albums.Contains(album));
                        interpret.Albums.AddRange(albums.Where(album => !interpret.Albums.Contains(album)));
                    }
                    else
                    {
                        interpret.Albums.Clear();
                    }
                }
                if (eventIds != null)
                {
                    if (eventIds.Length != 0)
                    {
                        var events = _eventRepository.GetByIds(eventIds);
                        interpret.Events.RemoveAll(e => !events.Contains(e));
                        interpret.Events.AddRange(events.Where(e => !interpret.Events.Contains(e)));
                    }
                    else
                    {
                        interpret.Events.Clear();
                    }
                }
                _interpretRepository.Update(interpret);
                uow.Commit();
            }
        }