TOC

This article has been localized into Spanish by the community.

HttpContext:

Query String (datos por GET)

Una de las formas más comunes de tomar datos de entrada del usuario, en una aplicación web como es a través de la cadena de consulta.s en tecnologías más viejas cómo PHP y ASP clásico, contratarías directamente con la cadena de consulta, cómo mencionamos previamente, ASP.NET MVC abstrajo la mayoría del manejo de cadenas de consulta en parámetros para tus acciones de controladores. Sin embargo, en algunas de las situaciones, sera relevante leerlos directamente desde la cadena de consulta, y afortunadamente para nosotros como es y fácil de hacer en ASP.NET MVC.

¿Qué es una cadena de consulta?

Las URLs están hechas de varias partes, como el protocolo,hostname, ruta y así. La cadena de consulta es la parte de la URL que viene después del carácter de signo de interrogación. Entonces, una URL cómo está:

https://www.google.com/search?q=test&oq=hello

Todo lo que está después del carácter ? Es considerado la cadena de consulta. En este caso, los parámetros: Uno llamado q y otro llamado oq ellos tienen los valores de "test" y "hello". Estos eran relevantes para la página mostrada por la URL - por ejemplo, el parámetro q es usado para decirle al servidor que está buscando el usuario. La cadena de consulta es usualmente agregada como un resultado del usuario haciendo clic en un link enviando un formulario. Esto le permite al mismo archivo en tu servidor manejar múltiples situaciones - esto puede variar la salida regresada basada en la entrada a través de la cadena de consulta.

Accesando la cadena de consulta

Accesar a la cadena de consulta en ASP.NET MVC es muy simple - sólo gusta la clase HttpContext, sobre la que este capítulo entero trata. La información sobre la cadena de consulta es localizada usando una de las siguientes propiedades: HttpContext.Request.QueryString y HttpContext.Request.Query. La diferencia es que el QueryString es básicamente una cadena de texto cruda, mientras que la propiedad Query te permite fácilmente que usar a las llaves y sus valores. Usaremos la propiedad Query en los siguientes ejemplos, donde demostraré cuánto asiles trabajar con estos:

public class HomeController : Controller
{
public IActionResult QueryTest()
{
string name = "John Doe";
if (!String.IsNullOrEmpty(HttpContext.Request.Query["name"]))
name = HttpContext.Request.Query["name"];

return Content("Name from query string: " + name);      
}
}

La página ahora puede ser llamada con una URL cómo está, dejar el nombre del usuario:

/Home/QueryTest?name=Jenna Doe

Cómo puedes ver, simple revisó la existencia de un parámetro en la cadena de consulta con el nombre "name", y si existe, lo almaceno en la variable.

Resumen

Accesar a la cadena de consulta en tu proyecto ASP.NET MVC es sencillo gracias a la clase HttpContext.

This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!