none
Web Api Pesquisar ( Get int Id) RRS feed

  • Discussão Geral

  • Boa tarde, gostaria de saber como posso fazer uma pesquisa (consumir) em minha aplicação WEB FORMS, usando a seguinte classe do Web api

     // GET: api/Aluno/5
            public Aluno Get(int id)
            {
               // return "value";
    
    
                Aluno objAluno = new Aluno();
                // Where(x => x.id == id).FirstOrDefault(), significa que
                // onde x (x => x.id são objAluno e id do objAluno) retorne apenas quando o id do objAluno (x).
                // for igual ao id do parâmetro  (public Alunos Get(int id))
                return objAluno.Listar().Where(x => x.id == id).FirstOrDefault();
    
    
            }
    

    Consegui fazer todos os outros métodos de boa, (CRUD) só esse que não estou conseguindo, alguém pode dar uma ajuda?

    Segue o código dos outros métodos

            #region METODOS WEB API
    
            //Listar 
            private void Listar()
            {
                //chamando a api pela url
                System.Net.Http.HttpResponseMessage response = client.GetAsync("api/Aluno").Result;
    
                //se retornar com sucesso busca os dados
                if (response.IsSuccessStatusCode)
                {
                    //pegando o cabeçalho
                    usuarioUri = response.Headers.Location;
    
                    //Pegando os dados do Rest e armazenando na variável usuários
                    var alunos = response.Content.ReadAsAsync<IEnumerable<Aluno>>().Result;
    
                    //preenchendo a lista com os dados retornados da variável
                    GridView1.DataSource = alunos;
                    GridView1.DataBind();
                }
    
                  //Se der erro na chamada, mostra o status do código de erro.
                else
                    Response.Write(response.StatusCode.ToString() + " - " + response.ReasonPhrase);
            }
            
            //Inserir
            private void Inserir(Aluno objAluno)
            {
               // var serializedProduto = JsonConvert.SerializeObject(objAluno);
            //    var content = new StringContent(serializedProduto, Encoding.UTF8, "application/json");
    
                System.Net.Http.HttpResponseMessage response = client.GetAsync("api/Aluno").Result;
                response = client.PostAsJsonAsync("api/Aluno/", objAluno).Result;
    
                if (response.IsSuccessStatusCode)
                    usuarioUri = response.Headers.Location;
                else
                    Response.Write(response.StatusCode.ToString() + " - " + response.ReasonPhrase.ToString());
    
                Listar();
            }
    
    
            //Atualizar 
            private void Atualizar(int _Id, Aluno objAluno)
            {
                
    
                System.Net.Http.HttpResponseMessage response = client.GetAsync("api/Aluno").Result;
                response = client.PutAsJsonAsync("api/Aluno/" + _Id, objAluno).Result;
                
                if (response.IsSuccessStatusCode)
                    usuarioUri = response.Headers.Location;
                else
                    Response.Write(response.StatusCode.ToString() + " - " + response.ReasonPhrase.ToString());
    
                Listar();
            }
                  
            //Deletar 
            private void Deletar(int Id)
            {
                
                System.Net.Http.HttpResponseMessage response = client.GetAsync("api/Aluno/" + Id).Result;
                response = client.DeleteAsync("api/Aluno/" + Id).Result;
    
                if (response.IsSuccessStatusCode)
                    usuarioUri = response.Headers.Location;
                else
                    Response.Write(response.StatusCode.ToString() + " - " + response.ReasonPhrase.ToString());
    
                //chamar o método que pega todos os dados novamente, mostrado na parte 2.   
                Listar();
            }
    
    
          
    
            #endregion
    


    Se for para responder "procure no google", nem perca seu tempo ! :)

    terça-feira, 20 de março de 2018 18:10