HttpUtility.ParseQueryString HttpUtility.ParseQueryString HttpUtility.ParseQueryString HttpUtility.ParseQueryString Method

Definição

Analisa uma cadeia de caracteres de consulta em uma NameValueCollection.Parses a query string into a NameValueCollection.

Sobrecargas

ParseQueryString(String) ParseQueryString(String) ParseQueryString(String) ParseQueryString(String)

Analisa uma cadeia de caracteres de consulta em um NameValueCollection usando codificação UTF8.Parses a query string into a NameValueCollection using UTF8 encoding.

ParseQueryString(String, Encoding) ParseQueryString(String, Encoding) ParseQueryString(String, Encoding)

Analisa uma cadeia de caracteres de consulta em um NameValueCollection usando o Encoding especificado.Parses a query string into a NameValueCollection using the specified Encoding.

ParseQueryString(String) ParseQueryString(String) ParseQueryString(String) ParseQueryString(String)

Analisa uma cadeia de caracteres de consulta em um NameValueCollection usando codificação UTF8.Parses a query string into a NameValueCollection using UTF8 encoding.

public:
 static System::Collections::Specialized::NameValueCollection ^ ParseQueryString(System::String ^ query);
public static System.Collections.Specialized.NameValueCollection ParseQueryString (string query);
static member ParseQueryString : string -> System.Collections.Specialized.NameValueCollection
Public Shared Function ParseQueryString (query As String) As NameValueCollection

Parâmetros

query
String String String String

A cadeia de caracteres de consulta a ser analisada.The query string to parse.

Retornos

Um NameValueCollection de valores e parâmetros de consulta.A NameValueCollection of query parameters and values.

Exceções

Exemplos

O exemplo de código a seguir demonstra como usar o ParseQueryString método.The following code example demonstrates how to use the ParseQueryString method. Várias ocorrências da mesma variável de cadeia de caracteres de consulta são consolidadas em uma entrada de retornado NameValueCollection.Multiple occurrences of the same query string variable are consolidated in one entry of the returned NameValueCollection.

<%@ Page Language="C#"%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  protected void Page_Load(object sender, EventArgs e)
  {
    String currurl = HttpContext.Current.Request.RawUrl;
    String querystring = null ;

    // Check to make sure some query string variables
    // exist and if not add some and redirect.
    int iqs = currurl.IndexOf('?');
    if (iqs == -1)
    {
      String redirecturl = currurl + "?var1=1&var2=2+2%2f3&var1=3";
      Response.Redirect(redirecturl, true); 
    }
    // If query string variables exist, put them in
    // a string.
    else if (iqs >= 0)
    {
      querystring = (iqs < currurl.Length - 1) ? currurl.Substring(iqs + 1) : String.Empty;
    }
   
    // Parse the query string variables into a NameValueCollection.
    NameValueCollection qscoll = HttpUtility.ParseQueryString(querystring);
    
    // Iterate through the collection.
    StringBuilder sb = new StringBuilder("<br />");
    foreach (String s in qscoll.AllKeys)
    {
      sb.Append(s + " - " + qscoll[s] + "<br />");
    }
    
    // Write the result to a label.
    ParseOutput.Text = sb.ToString();

  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HttpUtility ParseQueryString Example</title>
</head>
<body>
    <form id="form1" runat="server">
      Query string variables are:
      <asp:Label  id="ParseOutput"
                  runat="server" />
    </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

    Dim currurl As String = HttpContext.Current.Request.RawUrl
    Dim querystring As String = Nothing
    
    ' Check to make sure some query string variables
    ' exist and if not add some and redirect.
    Dim iqs As Int32 = currurl.IndexOf("?".ToCharArray())
    If (iqs = -1) Then
      
      Dim redirecturl As String = currurl & "?var1=1&var2=2+2%2f3&var1=3"
      Response.Redirect(redirecturl, True)
      
      ' If query string variables exist, put them in
      ' a string.
    ElseIf (iqs >= 0) Then
      
      If (iqs < currurl.Length - 1) Then
        querystring = currurl.Substring(iqs + 1)
      End If
          
    End If

    ' Parse the query string variables into a NameValueCollection.
    Dim qscoll As NameValueCollection = HttpUtility.ParseQueryString(querystring)
    
    ' Iterate through the collection.
    Dim sb As New StringBuilder("<br />")
    For Each s As String In qscoll.AllKeys
      
      sb.Append(s & " - " & qscoll(s) & "<br />")
    
    Next s
    
    ' Write the result to a label
    ParseOutput.Text = sb.ToString()
    
  End Sub
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>HttpUtility ParseQueryString Example</title>
</head>
<body>
    <form id="Form1" runat="server">
      Query string variables are:
      <asp:Label  id="ParseOutput"
                  runat="server" />
    </form>
</body>
</html>

Comentários

O ParseQueryString método usos UTF8 formato para analisar a cadeia de caracteres de consulta no retornado NameValueCollection, os caracteres codificados de URL são decodificados e várias ocorrências do mesmo parâmetro de cadeia de caracteres de consulta são listadas como uma única entrada com uma vírgula separando cada valor.The ParseQueryString method uses UTF8 format to parse the query string In the returned NameValueCollection, URL-encoded characters are decoded and multiple occurrences of the same query string parameter are listed as a single entry with a comma separating each value.

Importante

O ParseQueryString método usa cadeias de caracteres de consulta que podem conter a entrada do usuário, que é uma potencial ameaça de segurança.The ParseQueryString method uses query strings that might contain user input, which is a potential security threat. Por padrão, as páginas da Web do ASP.NET validam que a entrada do usuário não inclui elementos HTML ou script.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Para obter mais informações, consulte Visão geral de explorações de script.For more information, see Script Exploits Overview.

Veja também

ParseQueryString(String, Encoding) ParseQueryString(String, Encoding) ParseQueryString(String, Encoding)

Analisa uma cadeia de caracteres de consulta em um NameValueCollection usando o Encoding especificado.Parses a query string into a NameValueCollection using the specified Encoding.

public:
 static System::Collections::Specialized::NameValueCollection ^ ParseQueryString(System::String ^ query, System::Text::Encoding ^ encoding);
public static System.Collections.Specialized.NameValueCollection ParseQueryString (string query, System.Text.Encoding encoding);
static member ParseQueryString : string * System.Text.Encoding -> System.Collections.Specialized.NameValueCollection

Parâmetros

query
String String String String

A cadeia de caracteres de consulta a ser analisada.The query string to parse.

encoding
Encoding Encoding Encoding Encoding

O Encoding a ser usado.The Encoding to use.

Retornos

Um NameValueCollection de valores e parâmetros de consulta.A NameValueCollection of query parameters and values.

Exceções

query é null.query is null.

- ou --or- encoding é null.encoding is null.

Comentários

No retornado NameValueCollection, os caracteres codificados de URL são decodificados e várias ocorrências do mesmo parâmetro de cadeia de caracteres de consulta são listadas como uma única entrada com uma vírgula separando cada valor.In the returned NameValueCollection, URL-encoded characters are decoded and multiple occurrences of the same query string parameter are listed as a single entry with a comma separating each value.

Importante

O ParseQueryString método usa cadeias de caracteres de consulta que podem conter a entrada do usuário, que é uma potencial ameaça de segurança.The ParseQueryString method uses query strings that might contain user input, which is a potential security threat. Por padrão, as páginas da Web do ASP.NET validam que a entrada do usuário não inclui elementos HTML ou script.By default, ASP.NET Web pages validate that user input does not include script or HTML elements. Para obter mais informações, consulte Visão geral de explorações de script.For more information, see Script Exploits Overview.

Veja também

Aplica-se a