Compartilhar via


UriTemplate.Match(Uri, Uri) Método

Definição

Tenta corresponder um Uri a um UriTemplate.

public:
 UriTemplateMatch ^ Match(Uri ^ baseAddress, Uri ^ candidate);
public UriTemplateMatch Match (Uri baseAddress, Uri candidate);
member this.Match : Uri * Uri -> UriTemplateMatch
Public Function Match (baseAddress As Uri, candidate As Uri) As UriTemplateMatch

Parâmetros

baseAddress
Uri

O endereço básico.

candidate
Uri

O Uri a ser comparado com o modelo.

Retornos

UriTemplateMatch

Uma instância.

Exemplos

O exemplo a seguir mostra como chamar o Match(Uri, Uri) método.

UriTemplate template = new UriTemplate("weather/{state}/{city}?forecast={day}");
Uri prefix = new Uri("http://localhost");

Uri fullUri = new Uri("http://localhost/weather/Washington/Redmond?forecast=today");
UriTemplateMatch results = template.Match(prefix, fullUri);

Console.WriteLine("Matching {0} to {1}", template.ToString(), fullUri.ToString());

if (results != null)
{
    foreach (string variableName in results.BoundVariables.Keys)
    {
        Console.WriteLine("   {0}: {1}", variableName, results.BoundVariables[variableName]);
    }
}
Dim template As UriTemplate = New UriTemplate("weather/{state}/{city}?forecast={day}")
Dim prefix As Uri = New Uri("http://localhost")

Dim fullUri As Uri = New Uri("http://localhost/weather/Washington/Redmond?forecast=today")
Dim results As UriTemplateMatch = template.Match(prefix, fullUri)

Console.WriteLine("Matching {0} to {1}", template.ToString(), fullUri.ToString())

If results IsNot Nothing Then
    For Each variableName As String In results.BoundVariables.Keys
        Console.WriteLine("   {0}: {1}", variableName, results.BoundVariables(variableName))
    Next
End If

Comentários

Se a correspondência for bem-sucedida, ela UriTemplateMatch será preenchida com os segmentos de URI, valores variáveis, valores de cadeia de caracteres de consulta e segmentos curinga do URI do candidato. Se a correspondência não for bem-sucedida, null será retornada.

Aplica-se a