コード例 #1
0
        public IActionResult GetTracks([FromQuery] int?take, [FromQuery] int?skip)
        {
            var userId = User.GetUserId();
            var tracks = _trackService.GetTracks(userId, take, skip);

            var mappedTracks = new List <TrackModel>();

            foreach (var track in tracks)
            {
                var mappedTrack = new TrackModel();
                mappedTrack.Id        = track.Id;
                mappedTrack.Name      = track.Name;
                mappedTrack.CreatedAt = track.CreatedAt;
                try
                {
                    mappedTrack.AllowedCustomizations = track.AllowedCustomizations.Select(c => c.ToString()).ToArray();
                }
                catch
                {
                    mappedTrack.AllowedCustomizations = Array.Empty <string>();
                }
                mappedTracks.Add(mappedTrack);
            }

            var response = new GetTracksResponse()
            {
                Tracks = mappedTracks.ToArray(),
            };

            return(Ok(response));
        }
コード例 #2
0
        private Dictionary <int, TrackDto> PrintTrackList(UserDto userDto)
        {
            var result = _tracksService.GetTracks(userDto.Id);
            var tracks = new Dictionary <int, TrackDto>();

            if (!result.Any())
            {
                Console.WriteLine("Список треков пока пуст");
            }
            else
            {
                Console.WriteLine("{0,-3} {1,-20} {2,-30} {3,-10}", "№", "Name", "CreatedAt", "Customizations");
                int i = 0;
                foreach (var track in result)
                {
                    i++;
                    tracks[i] = track;
                    Console.Write("{0,-3} {1,-20} {2,-30}",
                                  i,
                                  track.Name,
                                  track.CreatedAt.ToString("g", CultureInfo.CreateSpecificCulture("de-DE")));
                    foreach (var customizationType in track.AllowedCustomizations)
                    {
                        Console.Write(customizationType.ToString("G"), ", ");
                    }

                    Console.WriteLine();
                }
            }

            return(tracks);
        }