Exemplo n.º 1
0
        public IActionResult Create(TrackCreateGetViewModel model)
        {
            if (model.IsAuthenticated == "false")
            {
                model.Error = Constants.UnauthorizedAccessError;
                return(Unauthorized(model, Constants.UnauthorizedViewRoute));
            }
            Guid albumId = Guid.Parse(model.AlbumId);
            var  album   = AlbumService.GetAlbum(albumId);

            model.AlbumArtist = album.Artist;
            var           musicGenres     = Enum.GetValues(typeof(MusicGenre));
            StringBuilder musicGenresList = new StringBuilder();

            foreach (var musicGenre in musicGenres)
            {
                var genre = musicGenre.GetType().GetMember(musicGenre.ToString())
                            .First().GetCustomAttribute <DisplayNameAttribute>();
                if (genre != null)
                {
                    musicGenresList.AppendFormat(Constants.MusicGenresListOption, genre.DisplayName);
                }
                else
                {
                    musicGenresList.AppendFormat(Constants.MusicGenresListOption, musicGenre.ToString());
                }
            }
            model.MusicGenres = musicGenresList.ToString();
            return(View(model));
        }
        public IActionResult Create(TrackCreateGetViewModel model)
        {
            if (model.AlbumId == null)
            {
                return(BadRequest(string.Format(
                                      Constants.EntityPropertyMissingError, "Album", "ID")));
            }
            var album = AlbumService.GetAlbumById(model.AlbumId);

            model.Artist      = album.Artist;
            model.MusicGenres = Enumerator
                                .GetTextValues(typeof(MusicGenre))
                                .Select(displayName => new MusicGenreViewModel()
            {
                DisplayName = displayName
            });
            return(View(model));
        }