UriTemplate.BindByPosition(Uri, String[]) 方法

定義

從此樣板和參數值的陣列建立新的 URI。

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

參數

baseAddress
Uri

包含基底位址的 Uri

values
String[]

參數值。

傳回

Uri

新的 Uri 執行個體。

範例

下列範例將示範如何呼叫 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")

備註

參數值會依位置由左到右進行繫結。 第一個參數值會取代在樣板中找到的第一個變數,第二個參數值會取代第二個變數,依此類推。 傳遞至這個方法的變數會逸出。

注意

傳入值參數中的參數數目必須符合樣板中變數的數目。 否則會擲回 FormatException

注意

您可以在參數值陣列內傳入文字,參數值陣列不會使所產生的 URI 與用於產生它的樣板相符。 這類文字的範例包括:'/'、'.'、'..'、'*'、'{' 和 '}'。 下列程式碼可示範這項處理。

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

適用於