UriTemplateTable.KeyValuePairs Property


Gets a collection of key/value pairs that consist of UriTemplate objects and their associated data.

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

public IList<KeyValuePair<UriTemplate, object>> KeyValuePairs { get; }

Property Value

Type: System.Collections.Generic.IList<KeyValuePair<UriTemplate, Object>>

A collection of key/value pairs that consist of UriTemplate objects and their associated data.

Each UriTemplate instance in the table has data associated with it. The KeyValuePairs property contains a collection of key value pairs where the key is a UriTemplate instance and the value is the data associated with the UriTemplate. Values can only be added to KeyValuePairs property prior to calling MakeReadOnly(Boolean) or Match(Uri) or MatchSingle(Uri) otherwise a NotSupportedException is thrown.

The following example shows how to access the KeyValuePairs property.

Uri prefix = new Uri("http://localhost/");

//Create a series of templates
UriTemplate weatherByCity = new UriTemplate("weather/ state}/ city}");
UriTemplate weatherByCountry = new UriTemplate("weather/ country}/ village}");
UriTemplate weatherByState = new UriTemplate("weather/ state}");
UriTemplate traffic = new UriTemplate("traffic/*");
UriTemplate wildcard = new UriTemplate("*");

//Create a template table
UriTemplateTable table = new UriTemplateTable(prefix);
//Add each template to the table with some associated data
table.KeyValuePairs.Add(new KeyValuePair<UriTemplate, Object>(weatherByCity, "weatherByCity"));
table.KeyValuePairs.Add(new KeyValuePair<UriTemplate, Object>(weatherByCountry, "weatherByCountry"));
table.KeyValuePairs.Add(new KeyValuePair<UriTemplate, Object>(weatherByState, "weatherByState"));
table.KeyValuePairs.Add(new KeyValuePair<UriTemplate, Object>(traffic, "traffic"));


foreach (KeyValuePair<UriTemplate, Object> keyPair in table.KeyValuePairs)
    Console.WriteLine("     0},  1}", keyPair.Key, keyPair.Value);


.NET Framework
Available since 3.5
Return to top