WebAPI REST - SELECT através do método GET

11/06/2019

13

Bom dia,

Poderiam me dar uma ajuda por favor,

Estou com uma dúvida, tenho um método GET que espera o id do cliente pela url http://localhost/api/cliente/(codigo_cliente)
estou com um problema para acessar um cliente pelo id, através de um select, gostaria de receber o id e fazer um select no banco trazendo os dados do cliente, poderiam me ajudar a incrementar o códido abaixo por favor, segue meu GET:

// GET: api/Cliente/5
[ResponseType(typeof(Cliente))]
public IHttpActionResult GetCliente(int id)
{
Cliente cliente = db.Clientes.Find();
if (cliente == null)
{
return NotFound();
}

return Ok(cliente);


}
Responder

Posts

Bom dia,

Poderiam me dar uma ajuda por favor,

Estou com uma dúvida, tenho um método GET que espera o id do cliente pela url http://localhost/api/cliente/(codigo_cliente)
estou com um problema para acessar um cliente pelo id, através de um select, gostaria de receber o id e fazer um select no banco trazendo os dados do cliente, poderiam me ajudar a incrementar o códido abaixo por favor, segue meu GET:

// GET: api/Cliente/5
[ResponseType(typeof(Cliente))]
public IHttpActionResult GetCliente(int id)
{
Cliente cliente = db.Clientes.Find();
if (cliente == null)
{
return NotFound();
}

return Ok(cliente);


}


Olá Neto, não entendi muito bem a sua pergunta, porém acho que seu código não está funcionado, apenas porque você não está passando o id do
controller 
no seu método
Find()
.

Então acho que é só você passar esse id assim:
[ResponseType(typeof(Cliente))]
public IHttpActionResult GetCliente(int id)
{
    Cliente cliente = db.Clientes.Find(id);
}

Responder

11/06/2019

Francisco Neto

Olá William Nascimento,

Muito obrigado pela resposta, desculpe não ter conseguido explicar com mais clareza
adicionei o id conforme mencionou, ele trouxe um cliente por id, eu gostaria de receber o ID e fazer um SELECT
na minha tabela, com a clausula WHERE, ou seja, gostaria de fazer uma consulta na minha tabela com o ID vindo do GET
estou utilizando o entity para comunicar com o bd

private ClienteDbContext db = new ClienteDbContext();
public DbSet<Cliente> Clientes { get; set; }


Bom dia,

Poderiam me dar uma ajuda por favor,

Estou com uma dúvida, tenho um método GET que espera o id do cliente pela url http://localhost/api/cliente/(codigo_cliente)
estou com um problema para acessar um cliente pelo id, através de um select, gostaria de receber o id e fazer um select no banco trazendo os dados do cliente, poderiam me ajudar a incrementar o códido abaixo por favor, segue meu GET:

// GET: api/Cliente/5
[ResponseType(typeof(Cliente))]
public IHttpActionResult GetCliente(int id)
{
Cliente cliente = db.Clientes.Find();
if (cliente == null)
{
return NotFound();
}

return Ok(cliente);


}


Olá Neto, não entendi muito bem a sua pergunta, porém acho que seu código não está funcionado, apenas porque você não está passando o id do
controller 
no seu método
Find()
.

Então acho que é só você passar esse id assim:
[ResponseType(typeof(Cliente))]
public IHttpActionResult GetCliente(int id)
{
    Cliente cliente = db.Clientes.Find(id);
}

Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar