UriTemplate.BindByPosition(Uri, String[]) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Crée un URI à partir du modèle et d’un tableau de valeurs de paramètre.
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
Paramètres
- values
- String[]
Valeurs des paramètres.
Retours
Nouvelle Uri instance.
Exemples
L’exemple suivant montre comment appeler le BindByPosition(Uri, String[]).
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")
Remarques
Les valeurs de paramètre sont liées par position gauche à droite. La première valeur de paramètre remplace la première variable trouvée dans le modèle, la deuxième valeur de paramètre remplace la deuxième variable, et ainsi de suite. Les variables passées à cette méthode sont échappées.
Note
Le nombre de paramètres passés dans le paramètre de valeurs doit correspondre au nombre de variables dans le modèle. Si ce n’est pas le cas, un FormatException est levée.
Note
Il est possible de transmettre du texte dans le tableau de valeurs de paramètre qui empêche l’URI généré de correspondre au modèle utilisé pour le générer. Voici quelques exemples de ce texte : '/', '.',..', '*', '{' et '}'. Le code suivant illustre cela.
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