コード例 #1
0
        public MusicaViewModel(INavigation pNavigation, Guid?pId = null) : base(pNavigation)
        {
            if (pId.HasValue)
            {
                this._Dto = MobileDatabase.Current.Get <MusicaDto>(pId.Value);
            }

            if (this._Dto == null)
            {
                this._Dto = new MusicaDto();
            }
        }
コード例 #2
0
        public async Task Post(MusicaDto pDto)
        {
            try
            {
                await HttpClientService.Current.Autenticar();

                using (var _response = await HttpClientService.Current.Client.PostAsync("http://bandtec-api.azurewebsites.net/api/v1/musica", new StringContent(JsonConvert.SerializeObject(pDto), Encoding.UTF8, "application/json")))
                {
                    if (!_response.IsSuccessStatusCode)
                    {
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
コード例 #3
0
        public IActionResult Post(int idAlbum, [FromBody] MusicaDto musicaRequest)
        {
            if (albumRepository.Obter(idAlbum) == null)
            {
                return(NotFound());
            }

            var musica    = MapearDtoParaDominio(musicaRequest);
            var mensagens = musicaService.Validar(musica);

            if (mensagens.Count > 0)
            {
                return(BadRequest(mensagens));
            }

            musicaRepository.SalvarMusica(idAlbum, musica);
            database.Commit();
            return(CreatedAtRoute("GetMusica", new { id = musica.Id }, musica));
        }
コード例 #4
0
        public IActionResult Put(int idAlbum, int id, [FromBody] MusicaDto musicaRequest)
        {
            if (albumRepository.Obter(idAlbum) == null)
            {
                return(NotFound());
            }

            var musica    = MapearDtoParaDominio(musicaRequest);
            var mensagens = musicaService.Validar(musica);

            if (mensagens.Count > 0)
            {
                return(BadRequest(mensagens));
            }

            musicaRepository.AtualizarMusica(id, musica);
            database.Commit();
            return(Ok());
        }
コード例 #5
0
 private Musica MapearDtoParaDominio(MusicaDto musica)
 {
     return(new Musica(musica.Nome, musica.Duracao));
 }
コード例 #6
0
 internal Task Selecionar(MusicaDto pDto)
 {
     return(this.Navigation.PushAsync(new MusicaPage(pDto.Id)));
 }