.NET Framework Class Library
UriTemplateMatch..::.Data Property

Gets and sets the object associated with the UriTemplateMatch instance.

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

Visual Basic (Declaration)
Public Property Data As Object
Visual Basic (Usage)
Dim instance As UriTemplateMatch
Dim value As Object

value = instance.Data

instance.Data = value
C#
public Object Data { get; set; }
Visual C++
public:
property Object^ Data {
    Object^ get ();
    void set (Object^ value);
}
JScript
public function get Data () : Object
public function set Data (value : Object)

Property Value

Type: System..::.Object
An Object instance.
Remarks

When you add a UriTemplate to a UriTemplateTable you associate data with the template. This value is application specific; no particular semantics are associated with this value. When Match(Uri) is called and a match is found the data associated with the matching template is returned in the Data property.

Examples

The following code shows how to access the Data property.

Visual Basic
Dim prefix As New Uri("http://localhost/")

' Create some templates:
Dim weatherByCity As New UriTemplate("weather/ state}/ city}")
Dim weatherByState As New UriTemplate("weather/ state}")
Dim traffic As New UriTemplate("traffic/*")
Dim wildcard As New UriTemplate("*")

'Create a template table
Dim table As UriTemplateTable = New UriTemplateTable(prefix)

'Add the templates to the template table along with some associated data
table.KeyValuePairs.Add(New KeyValuePair(Of UriTemplate, Object)(weatherByCity, "weatherByCity"))
table.KeyValuePairs.Add(New KeyValuePair(Of UriTemplate, Object)(weatherByState, "weatherByState"))
table.KeyValuePairs.Add(New KeyValuePair(Of UriTemplate, Object)(traffic, "traffic"))

'Match a URI to a template
Dim candidateUri As New Uri("http://localhost/weather/WA/Redmond")
Dim results As UriTemplateMatch = table.MatchSingle(candidateUri)

If (results IsNot Nothing) Then

    'Get the data associated with the matching template
    Dim data As String = CType(results.Data, String)
    Console.WriteLine("Matching data is  0}", Data)
End If
C#
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)
{
    Object data = results.Data;
}
Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

Supported in: 3.5
See Also

Reference

Tags :


Page view tracker