コード例 #1
0
        public IEnumerable <Event> VisibleEvents(IEventAreaService eas)
        {
            var r = from x in GetAll()
                    join a in eas.GetAll() on x.Id equals a.EventId
                    where a.Price != 0
                    select x;

            return(r.ToList());
        }
コード例 #2
0
        public bool Delete(int id, IEventSeatService es, IEventAreaService ea)
        {
            var eaAll = ea.GetAll();
            var esAll = es.GetAll();

            var r = from eventArea in eaAll
                    join eventSeat in esAll on eventArea.Id equals eventSeat.EventAreaId
                    where eventSeat.State != 0 &&
                    eventArea.LayoutId == id
                    select eventArea;

            if (r.Any())
            {
                throw new Exception("Try to delete layout for locked seat");
            }
            return(Repository.Delete(id));
        }
コード例 #3
0
        public bool Delete(int id, IEventSeatService ess, IEventAreaService eas, ILayoutService ls)
        {
            var all   = GetAll();
            var esAll = ess.GetAll();
            var eaAll = eas.GetAll();
            var lsAll = ls.GetAll();

            if ((from venue in all
                 join layout in lsAll on venue.Id equals layout.VenueId
                 join eventArea in eaAll on layout.Id equals eventArea.LayoutId
                 join eventSeat in esAll on eventArea.Id equals eventSeat.EventAreaId
                 where eventSeat.State != 0
                 select venue
                 ).Any())
            {
                throw new Exception("Try to delete venue with locked seats");
            }

            return(Repository.Delete(id));
        }