public GetArtistResponse GetArtists(int id) { var artistExists = _context.Artists.Any(x => x.IdArtist.Equals(id)); if (!artistExists) { throw new ArtistNotFoundException(); } var artist = _context.Artists .Single(x => x.IdArtist.Equals(id)); var artistEvents = _context.Artist_Events .Where(x => x.IdArtist.Equals(id)) .OrderByDescending(x => x.PerfomanceDate) .ToList(); var events = new List <Event>(); foreach (var artistEvent in artistEvents) { events.Add(_context.Events.Single(x => x.IdEvent.Equals(artistEvent.IdEvent))); } var result = new GetArtistResponse { Artist = artist, Events = events }; return(result); }
public GetArtistResponse GetArtist(int id) { var artist = _context.Artists.Include(e => e.ArtistEvents) .SingleOrDefault(e => e.IdArtist == id); if (artist == null) { throw new ArtistDoesNotExistsException($"Artist with an id {id} does not exists"); } var events = artist.ArtistEvents.Join(_context.Events, artist_event => artist_event.IdEvent, e => e.IdEvent, (artistEvent, e) => new { e.IdEvent, e.Name, e.StartDate, }); GetArtistResponse getArtistResponse = new GetArtistResponse() { IdArtist = artist.IdArtist, Nickname = artist.Nickname, Events = events }; return(getArtistResponse); }
public GetArtistResponse GetArtist(GetArtistRequest request) { var response = new GetArtistResponse(); var artist = _artistRepository.FindBy(request.Id); response.Artist = artist.ConvertToArtistView(); return(response); }
public IActionResult getArtist(int id) { var artist = _context.Artist.SingleOrDefault(e => e.IdArtist == id); if (artist == null) { return(NotFound("Brak artysty o podanym ID")); } var response = new GetArtistResponse(); response.IdArtist = artist.IdArtist; response.Nickname = artist.Nickname; response.Events = new List <GetEventResponse>(); var artist_event = _context.Artist_Event.Where(e => e.IdArtist == id); if (artist_event.Count() > 0) { var artist_eventList = artist_event.ToList(); for (int i = 0; i < artist_eventList.Count(); i++) { var ae = artist_eventList[i]; var ev = _context.Event.Where(e => e.IdEvent == ae.IdEvent) .SingleOrDefault(); if (ev != null) { var evRes = new GetEventResponse(); evRes.IdEvent = ev.IdEvent; evRes.Name = ev.Name; evRes.StartDate = ev.StartDate; evRes.EndDate = ev.EndDate; response.Events.Add(evRes); } } } response.Events.OrderBy(e => e.StartDate); return(Ok(response)); }
public GetArtistResponse GetArtist(int id) { var artist = _context.Artists.Where(a => a.IdArtist == id).FirstOrDefault(); if (artist == null) { throw new Exception("nie znaleziono artysty o takim id"); } GetArtistResponse response = new GetArtistResponse(); response.IdArtist = id; response.Nickname = artist.Nickname; var events = (from ae in _context.Artists_Events join a in _context.Artists on ae.IdArtist equals a.IdArtist join e in _context.Events on ae.IdEvent equals e.IdEvent join eo in _context.Events_Organisers on e.IdEvent equals eo.IdEvent join o in _context.Organisers on eo.IdOrganiser equals o.IdOrganiser where a.IdArtist == id orderby e.StartDate descending select new EventResponse { IdEvent = e.IdEvent, Name = e.Name, OrganiserName = o.Name, StartDate = e.StartDate, EndDate = e.EndDate }).ToList(); response.Events = events; return(response); }