UriTemplateMatch.BoundVariables Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene la colección BoundVariables
para la coincidencia de plantilla.
public:
property System::Collections::Specialized::NameValueCollection ^ BoundVariables { System::Collections::Specialized::NameValueCollection ^ get(); };
public System.Collections.Specialized.NameValueCollection BoundVariables { get; }
member this.BoundVariables : System.Collections.Specialized.NameValueCollection
Public ReadOnly Property BoundVariables As NameValueCollection
Valor de propiedad
Una instancia NameValueCollection que contiene los valores variables de la plantilla extraídos del URI durante la coincidencia.
Ejemplos
En el siguiente código se muestra cómo tener acceso a la propiedad BoundVariables.
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);
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
End If
'Code output:
'BaseUri: http://localhost/
'BoundVariables:
' state: wa
' city: seattleConsole.WriteLine("BaseUri: 0}", results.BaseUri)
Comentarios
Cada nombre de variable de la plantilla aparece como un nombre en esta colección y el valor enlazado a esa variable se almacena bajo el nombre correspondiente. En los valores de esta colección se han traducido todas las secuencias de escape a caracteres reales. Esta colección de valores de nombre usa una búsqueda que no distingue entre mayúsculas y minúsculas al hacer coincidir nombres de variables.