2. **Parâmetros de Cadeia de Consulta (Query String Parameters):** Esses parâmetros são enviados como parte da URL após um ponto de interrrogação e são usados para filtrar ou especificar dados. Em WebAPI, os parâmetros de cadeia de consulta são recebidos usando o atributo `[FromQuery]`. ```
csharp
public IHttpActionResult ListarProdutos([FromQuery] string tipo, [FromQuery] int pagina)
{
// Código para listar produtos por tipo e página
}
- Parâmetros no Corpo da Solicitação (Request Body Parameters): Os parâmetros no corpo são usados em requisições POST ou PUT e são enviados no formato JSON ou XML. Em WebAPI, esses parâmetros são recebidos usando o atributo
[FromBody]. ```
csharp
public IHttpActionResult CriarProduto([FromBody] ProdutoViewModel produto)
{
// Código para criar um novo produto usando os dados do objeto
}
4. **Parâmetros de Cabeçalho (Header Parameters):** Os parâmetros de cabeçalho contêm informações enviadas no próprio cabeçalho da requisição HTTP. Em WebAPI, eses parâmetros são recebidos usando o atributo `[FromHeader]`. ```
csharp
public IHttpActionResult ObterUsuario([FromHeader] string autenticacao)
{
// Código para buscar informações do usuário com base no token
}
- Dados de Formulário (Form Data): Para dados enviados no formato
application/x-www-form-urlencoded ou multipart/form-data, os parâmetros são recebidos usando o atributo [FromForm]. ```
csharp
public IHttpActionResult ProcessarFormulario([FromForm] string nome, [FromForm] string email)
{
// Código para processar dados do formulário
}
Esses são os tipos de parâmetros mais comuns em C# WebAPI. Você pode usar esses parâmetros em métodos de controleadores para receber dados do cliente e retornar respostas adequadas. Em C# WebAPI, os parâmetros são usados para receber dados enviados pelo cliente durante as requisições. Métodos em controleadores podem aceitar diferentes tipos de parâmetros para processar esses dados e retornar respostas. Os tipos de parâmetros incluem: 1. **Tipos de Dados Básicos:** Parâmetros simples como inteiros, strings e booleanos podem ser usados para receber dados básicos. ```
csharp
public IHttpActionResult Buscar(int id)
{
// Processar requisição e retornar resposta
}
- Objetos Complexos: Você pode definir clases personalizadas para receber dados complexos no corpo da requisição. ```
csharp
public IHttpActionResult Salvar([FromBody] MeuModelo modelo)
{
// Processar dados do objeto
}
3. **Parâmetros opcionais:** É possível definir valores padrão para parâmetros, tornando-os opcionais. ```
csharp
public IHttpActionResult Buscar(int id = 0)
{
// Usar valor default se o parâmetro não for enviado
}
- Atributos como
[FromBody] e [FromUri]: O atributo [FromBody] é usado para receber dados no corpo da requisição, enquanto [FromUri] é usado para receber parâmetros de rota ou de cadeia de consulta.