UriTemplate.BindByPosition(Uri, String[]) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Crea un nuovo URI a partire dal modello e da una matrice di valori di parametro.
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
Parametri
- values
- String[]
Valori di parametro.
Restituisce
Nuova istanza di Uri.
Esempio
Nell'esempio seguente viene illustrato come chiamare il metodo 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")
Commenti
I valori di parametro sono associati in base alla posizione da sinistra verso destra. Il primo valore di parametro sostituisce la prima variabile trovata nel modello, il secondo valore di parametro sostituisce la seconda variabile e così via. Le variabili passate a questo metodo sono precedute da caratteri di escape.
Nota
Il numero di parametri passati nel parametro dei valori deve corrispondere al numero di variabili contenute nel modello. In caso contrario, viene generata un'eccezione FormatException.
Nota
Per evitare che l'URI generato corrisponda al modello utilizzato per generarlo è possibile passare elementi di testo all'interno della matrice dei valori di parametro. Esempi di testo di questo tipo sono: '/', '.','..', '*', '{' e '}'. Questo concetto è illustrato nel codice riportato di seguito.
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