Como obter variáveis de string de consulta na solicitação do MVC 4?
Estou gargalhando aqui trabalhando no meu primeiro projeto MVC 4 com a variedade Web Api.
No MVC 3 eu poderia obter um parâmetro de string de consulta como:
var unicornName = Request.Query["unicornName"];
Mas no MVC 4, parece que o pedido foi de umHttpRequestBase
para umHttpRequestMessage
e o parâmetro Query não é mais. Então, hmm, ok, como faço para obtê-los agora? Eu encontrei alguns exemplos na web, mas eles são absurdos.
Este colega recomenda dividindo a string de consulta do RequestUri por "&" e encontrando seu param e par.E este exemplo mostra chamando umGetQueryNameValuePairs
método no novo objeto de solicitação que retorna uma lista de pares de valores de chave, em seguida, fazendo algum linq para encontrar sua chave e valor. Não pode ser assim tão errado para conseguir algo tão simples. Por favor, me diga que estou perdendo alguma coisa!
Nota: Eu posso entender que está indo no caminho do modelo de ligação e eu deveria estar trazendo parâmetros de string de consulta através do método params da ação, mas ainda há momentos em que variáveis de string de consulta precisam ser arrancadas (facilmente?) Do Request, como em um filtro.