WEBAPI VERBO GET COM DOIS PARAMETROS

 Tópico anterior Próximo tópico Novo tópico

WEBAPI VERBO GET COM DOIS PARAMETROS

C#

 Compartilhe  Compartilhe  Compartilhe
#484791 - 04/10/2018 15:41:56

MRSILVA
MARINGA
Cadast. em:Julho/2015


Ol.

Estou fazendo a minha primeira WebApi   algum pode me ajudar como fazer para passar os parmetros para minha controller.
Exemplo tenho o seguinte mtodo na minha controller:

[[HttpGet, Route([]api/ProdutoGrupo/GetDescricao[])]
        public IHttpActionResult GetDescricao(int id, int idTipo)
        {
            ProdutoGrupo produtoGrupo = new ProdutoGrupo();

            return Ok(produtoGrupo.GetDescricao(id, idTipo));
        }  


Como fazer para passar esses parmetros quando chamar esse mtodo na minha aplicao, tentei de varias formas inclusive informar na prpria url mas sem sucesso:

  public async void  GetDescricao(int id, int idTipo)
        {
            string dados = [][];
            using (HttpClient client = new HttpClient())
            {

                client.BaseAddress = new Uri([]http://localhost:50775/api/ProdutoGrupo/GetDescricao[]);
                var resposta = await client.GetAsync([][]);
            
            }
        }  

O mtodo ainda no est completo.

Desde j agradeo que puder me passar alguma ajuda.





Resposta escolhida #484794 - 04/10/2018 17:13:16

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
http://localhost:50775/api/ProdutoGrupo/GetDescricao/999/4444

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#484795 - 04/10/2018 17:49:11

MRSILVA
MARINGA
Cadast. em:Julho/2015


Ol Kerplunk Obrigado pelo retorno



Primeiramente quero agradecer pelos seus videos atravs deles que estou dando meus primeiros passos com WEBAPI.

Consegui implementar o mtodo conforme abaixo passando os parmetros atravs de uma UriBuilder

  public async void  GetDescricao(int id, int idTipo)
        {
            string dados = [][];
            using (HttpClient client = new HttpClient())
            {
                UriBuilder builder = new UriBuilder([]http://localhost:50775/api/ProdutoGrupo/GetDescricao[]);
                builder.Query = []Id=[] + id + []&idTipo=[]+ idTipo;

                //client.BaseAddress = new Uri(o[]);
                var resposta = client.GetAsync(builder.Uri).Result;

                string Dados = await resposta.Content.ReadAsStringAsync();

            }
        }  


O mtodo acima apenas um teste, uma boa forma de se fazer?

Desde j agradeo.



#484796 - 04/10/2018 18:10:19

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
Me parece meio estranho... um mtodo de GET geralmente retorna alguma coisa, o seu no est retornando nada...

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#484797 - 04/10/2018 19:19:07

MRSILVA
MARINGA
Cadast. em:Julho/2015


Última edição em 04/10/2018 19:20:36 por MRSILVA

Kerplunk esse mtodo e um s um teste, que seu mudar para funo a o invs de void teria que fazer algumas alteraes na minha view que est chamando esse mtodo, vou fazer os ajustes assim que minha WEBAPI tiver mais concistencia.
Minha dvida era mais se uma boa utilizar uma uriBuilder quando temos muitos parmetros para passar para controller




#484802 - 05/10/2018 09:22:48

KERPLUNK
RIO GRANDE DO SUL
Cadast. em:Junho/2009


Membro da equipe
O UriBuilder uma das alternativas para isso. Essa justamente a funo dele: compor uma URI
Pessoalmente, uso uma implementao fluid dela, mas no final das contas vai ser o mesmo que voc est fazendo.
Com a implementao que uso fica:

FluidUri xxx = new FluidUri();
xxx.BaseAddress= []www.blabla.com[];
xxx.Add([]par1[], []99[]);
xxx.Add([]par2[], []98[]);
xxx.Add([]par3[], []97[]);


Ela tem umas outras frescurinhas, mas nada muito milagroso. Uso ela pra fazer chamadas API[]s OData

_______________________________________________________________________
Virei Orculo!
The end is nigh, be ready for the nukes!


#484808 - 05/10/2018 13:19:11

MRSILVA
MARINGA
Cadast. em:Julho/2015


Obrigado!



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por MRSILVA em 05/10/2018 16:32:23