UriTemplateMatch Class
Definition
A class that represents the results of a match operation on a UriTemplate instance.
public ref class UriTemplateMatch
public class UriTemplateMatch
type UriTemplateMatch = class
Public Class UriTemplateMatch
- Inheritance
-
UriTemplateMatch
Examples
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();
}
Dim template As New UriTemplate("weather/{state}/{city}?forecast=today")
Dim baseAddress As New Uri("http://localhost")
Dim fullUri As 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
Dim results As UriTemplateMatch = template.Match(baseAddress, fullUri)
If (results IsNot Nothing) Then
'BaseUri
Console.WriteLine("BaseUri: {0}", results.BaseUri)
Console.WriteLine("BoundVariables:")
For Each variableName As String In results.BoundVariables.Keys
Console.WriteLine(" {0}: {1}", variableName, results.BoundVariables(variableName))
Next
Console.WriteLine("QueryParameters:")
For Each queryName As String In results.QueryParameters.Keys
Console.WriteLine(" {0} : {1}", queryName, results.QueryParameters(queryName))
Next
Console.WriteLine()
Console.WriteLine("RelativePathSegments:")
For Each segment As String In results.RelativePathSegments
Console.WriteLine(" {0}", segment)
Next
Console.WriteLine()
Console.WriteLine("RequestUri:")
Console.WriteLine(results.RequestUri)
Console.WriteLine("Template:")
Console.WriteLine(results.Template)
Console.WriteLine("WildcardPathSegments:")
For Each segment As String In results.WildcardPathSegments
Console.WriteLine(" {0}", segment)
Next
Console.WriteLine()
End If
Remarks
The UriTemplateMatch class represents the results of calling the Match(Uri, Uri) method. This class is not thread safe.
Constructors
UriTemplateMatch() |
Initializes a new instance of the UriTemplateMatch class. |
Properties
BaseUri |
Gets or sets the base URI for the template match. |
BoundVariables |
Gets the |
Data |
Gets or 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 or sets the matched URI. |
Template |
Gets or 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. |
Methods
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
GetHashCode() |
Serves as the default hash function. (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) |