Exemple #1
0
        private AutorDetails AutorDetailsViewModelInitializer(int id)
        {
            Autor        autor  = GetAutor(id);
            AutorDetails result = new AutorDetails
            {
                albums      = GetAlbumsList(id),
                Description = autor.Description,
                Id          = id,
                Name        = autor.Name
            };

            return(result);
        }
        public async Task <ActionResult> Edit(int id, AutorDetails model)
        {
            try
            {
                var response = await _client.PutAutorAsync(model);

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
        public async Task <ActionResult> Create(AutorDetails model)
        {
            try
            {
                //Create
                await _client.PostAutorAsync(model);

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View("Error"));
            }
        }
        public async Task <ActionResult> Delete(int id, AutorDetails model)
        {
            try
            {
                var response = await _client.DeleteAutorAsync(model.Id);

                if (response.IsSuccessStatusCode)
                {
                    return(RedirectToAction("Index", "Home"));
                }

                return(RedirectToAction("Index", "Home"));
            }
            catch
            {
                return(View("Error"));
            }
        }
        private AutorDetails ToAutorDetails(Autores Autor)
        {
            //Mapeando aobjeto
            var autorDetalhes = new AutorDetails
            {
                Id         = Autor.Id,
                Nome       = Autor.Nome,
                Sobrenome  = Autor.Sobrenome,
                Email      = Autor.Email,
                Nascimento = Autor.Nascimento.Date
            };

            List <Livro_AutorViewModel> LivrosDoAutor = new List <Livro_AutorViewModel>();

            //Lista de Objetos com pares de:  Id_livro <-> Id_Autor
            foreach (var par in Autor.Autor_Livro)                       //Cada Par Livro-Autor tem um ID
            {
                //Pega no DB Obj_Livros desse Autor
                var livro = db.Livros.Single(x => x.Id == par.Id_Livro);

                //Add Livro na lista
                if (livro != null)
                {
                    LivrosDoAutor.Add(new Livro_AutorViewModel
                    {
                        titulo = livro.titulo,
                        isbn   = livro.isbn,
                        ano    = livro.ano
                    });
                }
            }
            ;
            autorDetalhes.LivrosEscritos = LivrosDoAutor;

            return(autorDetalhes);
        }
Exemple #6
0
 public async Task <HttpResponseMessage> PostAutorAsync(AutorDetails model)
 {
     return(await _client.PostAsJsonAsync("api/Autores", model));
 }
Exemple #7
0
 public async Task <HttpResponseMessage> PutAutorAsync(AutorDetails model)
 {
     return(await _client.PutAsJsonAsync($"api/Autores/{model.Id}", model));
 }