Conceitos e Exemplo Prático: QueryString
Olá pessoal, neste artigo veremos os conceitos e a sintaxe para o uso de um recurso muito usado dentro do ASP.NET, que se chama QueryString. Acompanhem:
A QueryString é um modelo clássico de manutenção do estado da página. Elas são nada mais do que conjuntos de pares/valores anexados a URL, em diversos sites hoje em dia vemos o uso delas.
Seu uso é simples, após a URL de determinada página, adicionamos o primeiro valor usando a seguinte sintaxe: ?Chave=Valor. Para passarmos mais de um conjunto, os mesmos devem ser concatenados usando o caractere coringa &.
Para recuperarmos o valor na outra página, usamos o método Request.QueryString.
Para entendermos melhor isso, vamos criar uma nova aplicação web, dando a ela o nome ExemploQueryString. Nela, além da Default.aspx, adicione mais uma página, a Default2.aspx.
Na Default.aspx arraste um HyperLink para a tela e configure a propriedade NavigateUrl como a que o código abaixo nos mostra:
<asp:HyperLink ID="hypPagina2" Text="Ir para a página 2" runat="server" NavigateUrl="~/Default2.aspx?Parametro=Wellington" />
Na Default2.aspx arraste um Label para a página, dando o ID a ele de lblValorQueryString. Agora vá a página de códigos e, no evento Page_Load, coloque o seguinte método:
protected void Page_Load(object sender, EventArgs e)
{
string valor = Request.QueryString["Parametro"];
if (valor != null)
{
lblValorQueryString.Text = "Parâmetro: " + valor;
}
}
No código acima criei uma variável do tipo String, que recebe, por meio do método Request.QueryString, o valor do parâmetro, que nesse exemplo é Parametro. Depois verifico se esse é valor é diferente de nulo. Se for, a Label criada na aspx receberá o texto “Parâmetro: “, concatenado com a variável valor preenchida com a QueryString.
Compile o projeto, clique no HyperLink e veja o resultado:
Experimente alterar o parâmetro e dar Enter na barra de endereços:
Agora como teste comente o código do Page_Load e adicione o seguinte:
foreach (String item in Request.QueryString.Keys)
{
lblValorQueryString.Text += "Chave= " + item + " --> " + Request.QueryString[item] + "<br>";
}
Dessa forma faço um laço para percorrer uma lista de QueryStrings para que as mesmas sejam exibidas concatenadas pela Label. Compile novamente a aplicação, clique no HyperLink e veja o resultado:
Para melhor entendimento, concatene na URL três valores e veja o resultado:
Disponibilizo o código-fonte desse projeto clicando aqui.
Assim finalizo o artigo. Muito obrigado a todos!
Um abraço, e até o próximo artigo
Wellington Balbo de Camargo
Publicado em 27/09/2010, em .NET, ASP.NET, C# e marcado como ASP.NET, hyperlink, parâmetro, querystring. Adicione o link aos favoritos. 12 Comentários.







cara muito bom bacana o blog continue assim welligton abraços.
Muito obrigado Douglas, continuarei assim pode deixar hehe.
Abraços cara.
Brother muito bom mesmo viu, agora estou com bastante duvida aqui em uma parte
estou tentando criar este programa Cadastro de Clientes, agora como eu faço
para usar o banco de dados, só não estou conseguindo fazer isto, se vc poder me ajudar
msn> samuel4022@hotmail.com
Te adicionei no msn, aceita lá.
Abraços.
Pow eu tava procurando tutoriais c# na internet e encontrei esse, to fazendo programação na faculdade e minha professora é pessima, o jeito é correr atrás se puder me add agradeço, vc parece manjar bastante do assunto =)
Valeu pelo elogio Vitor, te adicionei no msn, aceita lá.
Abraços.
msn > dede100@gmail.com
Welligton, em vez de passar seu nome como valor do parametro eu queria que fosse o valor do textbox que o usuario digitou.
Como faço?
att,
Simples cara, é só passar o nome do TextBox, só que daí você passa no code-behind e não na aspx.
Exemplo:
hypPagina2.NavigateUrl = “~/Default2.aspx?Parametro=” + txtNome.Text;
Abraços.
Obrigado Wellington! É isso mesmo!
De nada cara, abraços!
Pingback: Criação do Projeto – Editando Dados no GridView – Parte 1 « Programando .NET