UriTemplate.BindByPosition(Uri, String[]) Methode

Definitie

Hiermee maakt u een nieuwe URI op basis van de sjabloon en een matrix met parameterwaarden.

public:
 Uri ^ BindByPosition(Uri ^ baseAddress, ... cli::array <System::String ^> ^ values);
public Uri BindByPosition(Uri baseAddress, params string[] values);
member this.BindByPosition : Uri * string[] -> Uri
Public Function BindByPosition (baseAddress As Uri, ParamArray values As String()) As Uri

Parameters

baseAddress
Uri

Een Uri met het basisadres.

values
String[]

De parameterwaarden.

Retouren

Uri

Een nieuw Uri exemplaar.

Voorbeelden

In het volgende voorbeeld ziet u hoe u de BindByPosition(Uri, String[])aanroept.

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

Uri positionalUri = template.BindByPosition(prefix, "Washington", "Redmond", "Today");
Dim template As UriTemplate = New UriTemplate("weather/{state}/{city}?forecast={day}")
Dim prefix As Uri = New Uri("http://localhost")

Dim positionalUri As Uri = template.BindByPosition(prefix, "Washington", "Redmond", "Today")

Opmerkingen

De parameterwaarden zijn afhankelijk van positie van links naar rechts. De eerste parameterwaarde vervangt de eerste variabele in de sjabloon, de tweede parameterwaarde vervangt de tweede variabele, enzovoort. Variabelen die aan deze methode worden doorgegeven, worden ontsnapt.

Note

Het aantal parameters dat is doorgegeven in de waardenparameter, moet overeenkomen met het aantal variabelen in de sjabloon. Zo niet, dan wordt er een FormatException gegooid.

Note

Het is mogelijk om tekst door te geven in de matrix met parameterwaarden die voorkomt dat de gegenereerde URI overeenkomt met de sjabloon die wordt gebruikt om deze te genereren. Voorbeelden van dergelijke tekst zijn: '/', '.',.', '*', '{' en '}'. De volgende code laat dit zien.

UriTemplate template = new UriTemplate("far/{bat}/baz");

Uri uri = new Uri("http://localhost/Base");

Uri result = template.BindByPosition(uri, "."); // returns Base/form/baz

Uri result = template.BindByPosition(uri, ".."); // returns Base/baz

Uri result = template.BindByPosition(uri, "x/y"); // returns Base/form/x/y/baz

Uri result = template.BindByPosition(uri, "{x}"); // returns Base/form/{x}/baz

Uri result = template.BindByPosition(uri, "*"); // returns Base/form/*/baz

Van toepassing op