UriTemplateMatch Class
.NET Framework 4.5
A class that represents the results of a match operation on a UriTemplate instance.
Namespace: System
Assembly: System.ServiceModel (in System.ServiceModel.dll)
The UriTemplateMatch type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | BaseUri | Gets and sets the base URI for the template match. |
![]() | BoundVariables | Gets the BoundVariables collection for the template match. |
![]() | Data | Gets and sets the object associated with the UriTemplateMatch instance. |
![]() | QueryParameters | Gets a collection of query string parameters and their values. |
![]() | RelativePathSegments | Gets a collection of relative path segments. |
![]() | RequestUri | Gets and sets the matched URI. |
![]() | Template | Gets and sets the UriTemplate instance associated with this UriTemplateMatch instance. |
![]() | WildcardPathSegments | Gets a collection of path segments that are matched by a wildcard in the URI template. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object) | Determines whether the specified object is equal to the current object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
The UriTemplateMatch class represents the results of calling the Match(Uri, Uri) method. This class is not thread safe.
The following code shows how to use the UriTemplateMatch class.
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]); } Console.WriteLine("QueryParameters:"); foreach (string queryName in results.QueryParameters.Keys) { Console.WriteLine(" {0} : {1}", queryName, results.QueryParameters[queryName]); } Console.WriteLine(); Console.WriteLine("RelativePathSegments:"); foreach (string segment in results.RelativePathSegments) { Console.WriteLine(" {0}", segment); } Console.WriteLine(); Console.WriteLine("RequestUri:"); Console.WriteLine(results.RequestUri); Console.WriteLine("Template:"); Console.WriteLine(results.Template); Console.WriteLine("WildcardPathSegments:"); foreach (string segment in results.WildcardPathSegments) { Console.WriteLine(" {0}", segment); } Console.WriteLine(); }
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
