UriTemplateMatch.QueryParameters Property

 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Gets a collection of query string parameters and their values.

Namespace:   System
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

public NameValueCollection QueryParameters { get; }

Property Value

Type: System.Collections.Specialized.NameValueCollection

A NameValueCollection instance that contains the query string parameters and their values.

All query string name/value pairs from the original URI appear in this collection, even if they are not explicitly specified in the template string that was matched. The values in this collection have been had all escape sequences translated into actual characters.

The following code shows how to access the QueryParameters property.

UriTemplate template = new UriTemplate("weather/{state}/{city}?forecast=today");
Uri baseAddress = new Uri("http://localhost");
Uri fullUri = new Uri("http://localhost/weather/WA/Seattle?forecast=today");

Console.WriteLine("Matching {0} to {1}", template.ToString(), fullUri.ToString());

// Match a URI to a template
UriTemplateMatch results = template.Match(baseAddress, fullUri);
if (results != null)
{
    Console.WriteLine("QueryParameters:");
    foreach (string queryName in results.QueryParameters.Keys)
    {
        Console.WriteLine("    {0} : {1}", queryName, results.QueryParameters[queryName]);
    }
    Console.WriteLine();
}
// Code output:
//  QueryParameters:
//  forecast : today

.NET Framework
Available since 3.5
Return to top
Show: