BoundVariables Property
Collapse the table of content
Expand the table of content

UriTemplateMatch.BoundVariables Property

 

Gets the BoundVariables collection for the template match.

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

public NameValueCollection BoundVariables { get; }

Property Value

Type: System.Collections.Specialized.NameValueCollection

A NameValueCollection instance that contains template variable values extracted from the URI during the match.

Each template variable name appears as a name in this collection, and the value bound to that variable is stored under the corresponding name. The values in this collection have had all escape sequences translated into actual characters. This name value collection uses a case insensitive search when matching variable names.

The following code shows how to access the BoundVariables 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)
{
    // BaseUri
    Console.WriteLine("BaseUri: {0}", results.BaseUri);

    Console.WriteLine("BoundVariables:");
    foreach (string variableName in results.BoundVariables.Keys)
    {
        Console.WriteLine("    {0}: {1}", variableName, results.BoundVariables[variableName]);
    }
}
// Code output:
// BaseUri: http://localhost/
// BoundVariables:
//  state: wa
//  city: seattleConsole.WriteLine("BaseUri: {0}", results.BaseUri);

.NET Framework
Available since 3.5
Return to top
Show:
© 2016 Microsoft