Olá. Novamente gostaria de fazer um post (bem pequeno desta vez) para contribuir com aqueles que estão apredenndo RESTFull Services e ASP.NET CORE.
No projeto que venho trabalhando no Git Hub estou criando os métodos para retornar os registros. Nestes são enviados como parâmetros uma data inicial e o nome de um dos usuários para os quais os registros da agenda são criados.
Lendo a documentação sobre como passar múltiplos parâmetros para este método fiquei um pouco confuso porque encontrei vários formatos. Entretanto, ao tentar implementar, nenhum destes funcionou.
Até que, pesquisando no bom e velho Stackoverflow encontrei a dica para usar o atributo [FromQuery] como está no código abaixo:
O uso deste atributo deve ser feito colocando ao lado da variável passada no método. Assim, para cada elemento dentro da Query String da URL o valor vai ser armazenado na respectiva variável.
Caso este não seja passado, a variável irá receber o valor padrão do tipo representado.
Vale ressaltar que o ideal, para este tipo de passagem de parâmetro, é usar sempre tipos primitivos como int, string, date, etc. Para tipos complexos outros parâmetros como [fromBody] ou [FromHeader] (que são novos) devem ser usados.
Um tempo depois, conversando com meu colega, Marcos Jacobs (https://github.com/mvmjacobs) ele me deu a dica de ler a documentação sobre RESTFul services e Web APIs para clarear as ideias e entender a essência de uma Web API. O resultado está nos links no final do post. Até a próxima!
Links
- O que é API? REST e RESTful?
- Parameter Binding in ASP.NET Web API
- Improvements to Model Binding in ASP.NET Core
- Build RESTful APIs with ASP.NET Web API
- ASP.NET Core: [FromQuery] usage and URL format